1. 程式人生 > 其它 >檢視向控制器提交資料

檢視向控制器提交資料

控制器用使用者定義的類接收

前端提交程式碼

$.ajax({   
            type: "POST",   
            url: "/Login/DoAction",     
            datatype: "json",           
data: '{ "AccountName": "' + accountname + '", "Password": "' + pwd + '" }', contentType: "application/json; charset=utf-8", success: function
(data) { //data是返回的JSON資料 if (data.Result == "true") { $('#message').text("登陸成功,跳轉中..."); window.location.href = "/HOME/Index"; //開啟頁面 } else { $('#message').text(data.Msg); } },
error: function (e) { alert(e.responseText); }, beforeSend: function () { $('#login').attr("disabled", true); $('#message').text("正在登陸處理,請稍候..."); }, complete: function () { $(
'#login').attr("disabled", false); } });

控制器方法:

       public JsonResult DoAction(LoginUserInfo loginUserInfo)
        {
            //登入驗證
            bool result = SysUserRepository.CheckUserAndPassword(loginUserInfo);
            object message = string.Empty;
            if (result)
            {
                //Controller.Session 屬性 ,
                Session[LoginUserInfo.Session_Name] = loginUserInfo;
                message = new ResposeInfo { Msg = "執行成功", MsgCode = "0000", Result = "true" };
            }
            else
                message = new ResposeInfo { Msg = "賬號或密碼錯誤!", MsgCode = "1000", Result = "false" };
            return Json(message, JsonRequestBehavior.DenyGet);
        }
    public class LoginUserInfo
    {
        /// <summary>
        /// 超級使用者角色名稱
        /// </summary>
        public const string _SuperUserRoleName = "管理員";
        /// <summary>
        /// 儲存的Session名稱
        /// </summary>
        public const string Session_Name = "LoginUserInfo";

        public string AccountName { get; set; }
        public string Password { get; set; }
        public int DepartID { get; set; }
        public string RoleName { get; set; }
    }

控制器收到json資料,根據名稱匹配,LoginUserInfo其它成員沒有值,即部分賦值。