Exams/Areas/Admin/Controllers/BaseController.cs

(开头部分) 2KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Security;
using Exams.Utils;
using Exams.Models;

namespace Exams.Areas.Admin.Controllers
{
    public class BaseController : Controller
    {
        protected PetaPoco.Database db = new PetaPoco.Database("conn");

        private string authurl = System.Configuration.ConfigurationManager.AppSettings["authurl"];
        private string authsavekey = System.Configuration.ConfigurationManager.AppSettings["authsavekey"];
        private string authsavetype = System.Configuration.ConfigurationManager.AppSettings["authsavetype"];

        private EUser _curruser = null;
        public EUser CurrUser
        {
            get {
                if (_curruser == null)
                    _curruser = Common.GetCurrEUser();
                return _curruser;
            }
            set {
                _curruser = value;
            }
        }

        public void SaveLogin(EUser model)
        {
            switch (authsavetype.Trim().ToLower())
            {
                case "session":
                    HttpContext.Session[authsavekey.Trim()] = model;
                    break;
                case "cookie":
                    var ticket = new FormsAuthenticationTicket(1, model.ID.ToString(), DateTime.Now, DateTime.Now.AddMinutes(30), false, "");
                    var hashticket = FormsAuthentication.Encrypt(ticket);
                    var usercookie = new HttpCookie(authsavekey.Trim(), hashticket);
                    Response.Cookies.Add(usercookie);
                    break;
                default:
                    break;
            }
            CurrUser = model;
        }

        public void ClearLogin() {
            switch (authsavetype.Trim().ToLower())
            {
                case "session":
                    HttpContext.Session[authsavekey.Trim()] = null;
                    break;
                case "cookie":
                    var usercookie = new HttpCookie(authsavekey.Trim(), null);
                    Response.Cookies.Add(usercookie);
后面还有 9 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。