我的Web应用程序(一个WCF服务)使用SqlRoleProvider
,在Visual Studio开发服务器上运行良好。但是将其切换到IIS8 Express会导致它抛出NullReferenceException
:
Roles.IsUserInRole(username, role) // neither of them actually null
我在IsUserInRole方法文档中没有找到这个异常的提示。切换回Visual Studio开发服务器可以解决问题。这个异常的原因是什么,如何正确地修复它?该项目的目标框架是.NET Framework 4。
以下是配置的连接字符串:
<add name="ConnectionString"
connectionString="Data Source=.\sqlexpress;Initial Catalog=DevWeb;Integrated Security=True"
providerName="System.Data.SqlClient" />
以下是roleManager/providers
节点的内容:
<clear />
<add connectionStringName="ConnectionString" applicationName="MyApp" name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider"/>