你们是如何使用ASP.NET Membership Provider获取当前用户的ID的呢?我的应用程序是一个MVC 3,采用Database First方法,所以我创建了自己的数据库,并且Membership Provider和Role Provider正在使用我的表格(自定义Membership和Role Provider)。
在我的某个页面(反馈)中,用户可以发送关于我的网站的反馈,如果他已经连接,我希望在插入时将UserID包括在表格中。
但是由于ASP.NET Membership是一个IIdentity,我唯一能够访问的是名称。我不想通过名称创建两个表之间的链接,我需要ID!
那么你们在这个非常简单的任务中在应用程序中都做些什么呢?我的意思是,在几乎每个页面中,需要插入值的连接用户都需要用户ID来创建正确的外键到用户表格,对吧?顺便说一下,我对这个MVC框架很陌生,在那之前我使用ASP.NET aspx,并且对于用户信息,我使用了Session对象,它为我提供了当前ID、名称和其他必要的字段。由于使用Session对象的实现在共享主机中给我带来了麻烦,我想使用真正的membership。
谢谢!
编辑
我想要的ID必须是一个整数(实际上,我想要的是User表中的UserID字段)。
在我的某个页面(反馈)中,用户可以发送关于我的网站的反馈,如果他已经连接,我希望在插入时将UserID包括在表格中。
但是由于ASP.NET Membership是一个IIdentity,我唯一能够访问的是名称。我不想通过名称创建两个表之间的链接,我需要ID!
那么你们在这个非常简单的任务中在应用程序中都做些什么呢?我的意思是,在几乎每个页面中,需要插入值的连接用户都需要用户ID来创建正确的外键到用户表格,对吧?顺便说一下,我对这个MVC框架很陌生,在那之前我使用ASP.NET aspx,并且对于用户信息,我使用了Session对象,它为我提供了当前ID、名称和其他必要的字段。由于使用Session对象的实现在共享主机中给我带来了麻烦,我想使用真正的membership。
谢谢!
编辑
我想要的ID必须是一个整数(实际上,我想要的是User表中的UserID字段)。
(Guid)(Membership.GetUser().ProviderUserKey)
? - Tim Schmelter