Azure 和 MVC 中的成员角色
Posted
技术标签:
【中文标题】Azure 和 MVC 中的成员角色【英文标题】:Membership Roles in Azure and MVC 【发布时间】:2013-01-29 09:23:38 【问题描述】:我正在开发一个 ASP.NET MVC3 网站,并且正在使用 Microsoft ASP.NET 通用提供程序。 网络配置:
<connectionStrings>
<add name="MyContext" connectionString="data source=tcp:***.database.windows.net,1433;Initial Catalog=***;User Id=***;Password=***;Trusted_Connection=False;Encrypt=True;Connection Timeout=30" providerName="System.Data.SqlClient" />
</connectionStrings>
...
<roleManager defaultProvider="DefaultRoleProvider" enabled="true">
<providers>
<clear />
<add name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider" connectionStringName="MyContext" applicationName="/" />
</providers>
</roleManager>
Azure 中的 connectionStrings 没问题。 我使用查询脚本添加的 Aspnet 表和存储过程。迁移添加的表中的数据。我在管理门户中检查了它。 我可以获得个人资料成员资格和个人资料数据,但下面的代码返回空列表。
var userName = User.Identity.Name;
var userRoles = Roles.GetRolesForUser(userName).ToList();
userName 是正确的,并且表 aspnet_UsersInRoles 也包含正确的数据。 页面上没有例外。 为什么 userRoles 是空的?
【问题讨论】:
【参考方案1】:我通过创建从 SqlRoleProvider 继承的自定义提供程序来解决此问题。
【讨论】:
以上是关于Azure 和 MVC 中的成员角色的主要内容,如果未能解决你的问题,请参考以下文章