我想从jQuery方法中访问一个名为 UserType 的公共属性,该方法在控制器方法中填充了数据库调用的数据。
需要从多个控制器方法设置相同的属性值。我在ViewData中填充数据,并尝试使用jquery方法访问它,如下所述:
TestController.cs:
[Authorize(Roles = "Root")]
public ActionResult Index()
{
var user = _dbService.GetUser(_profile.UserName);
ViewData["UserType"] = user.UserType;
}
的Index.aspx:
<% var serializer = new System.Web.Script.Serialization.JavaScriptSerializer(); %>
<script type="text/javascript">
$(function () {
var userType = <%= serializer.Serialize(ViewData["UserType"]) %>;
alert(userType);
});
</script>
我能够成功访问UserType值,但我需要在所有控制器操作方法中使用下面提到的代码。
ViewData["UserType"] = user.UserType;
这不是一个好的设计实践。
任何人都可以通过一些示例代码帮助我了解管理上述变更的其他最佳替代方案吗?