Asp.net mvc 3 ASP.NET MVC/AX-自定义成员资格提供程序
我是ASP.NET MVC表单身份验证新手,刚刚开始创建自己的自定义成员资格提供程序。我的ValidateUser和ChangePassword方法可以工作,但现在我想使用GetUser方法返回整个站点中当前用户的数据。My AX方法返回一个AxaptaRecord,其中包含用户的详细信息,如电话号码、公司名称等。。如何将其与GetUser方法结合使用?控制器:Asp.net mvc 3 ASP.NET MVC/AX-自定义成员资格提供程序,asp.net-mvc-3,axapta,Asp.net Mvc 3,Axapta,我是ASP.NET MVC表单身份验证新手,刚刚开始创建自己的自定义成员资格提供程序。我的ValidateUser和ChangePassword方法可以工作,但现在我想使用GetUser方法返回整个站点中当前用户的数据。My AX方法返回一个AxaptaRecord,其中包含用户的详细信息,如电话号码、公司名称等。。如何将其与GetUser方法结合使用?控制器: var userDetails = System.Web.Security.Membership.GetUser(username);
var userDetails = System.Web.Security.Membership.GetUser(username);
然后,有许多不同的方法可以将数据传递给视图。
每种方法都有其优缺点。
有关详细信息,请单击
模型强类型视图可以让您轻松地处理验证和生成数据,但如果您有多个表,则在显示数据时效果不太好 您只需要创建一个新的对象实例并从AxaptaRecord对象填充属性,下面是一些伪代码:
MembershipUser user = new MembershipUser("AX",
(string)axRecord.get_Field("name"),
axRecord.get_Field("recid"),
email, //get this from SysUserInfo table
string.Empty,
string.Empty,
(bool)axRecord.get_Field("enable"),
!(bool)axRecord.get_Field("enable"),
(DateTime)Convert.ChangeType(axRecord.get_Field("createdDateTime"), typeof(DateTime)),
DateTime.MinValue,
DateTime.MinValue,
DateTime.MinValue,
DateTime.MinValue);
然后从GetUser方法返回user。请参见此处的GetUser方法说明:但在我的Membership.GetUser()方法中,我返回的是AxaptaRecord数据类型,而不是MembershipUser数据类型。我不确定使用自定义成员资格提供程序是否是最好的方法。我认为更好的方法可能是将返回的值存储在会话变量中