首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为SimpleMembership配置MVC

为SimpleMembership配置MVC
EN

Stack Overflow用户
提问于 2013-06-23 23:41:35
回答 2查看 1.1K关注 0票数 0

我有一个ASP.NET MVC应用程序,它有许多成员相关的页面,这些页面都是从项目模板中生成的。

当我试图访问其中一个页面时,会出现以下错误:

无法初始化ASP.NET简单成员资格数据库。有关更多信息,请参见http://go.microsoft.com/fwlink/?LinkId=256588

经过一段时间的研究,我发现我错过了连接线。我有一个名为FreeWebFilesEntities的现有连接字符串,我创建了一个名为DefaultConnection的新连接字符串,并给它提供了相同的值。

代码语言:javascript
复制
<connectionStrings>
    <add name="FreeWebFilesEntities" connectionString="metadata=res://*/FreeWebFilesRepository.csdl|res://*/FreeWebFilesRepository.ssdl|res://*/FreeWebFilesRepository.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=.;Initial Catalog=FreeWebFiles;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
    <add name="DefaultConnection" connectionString="metadata=res://*/FreeWebFilesRepository.csdl|res://*/FreeWebFilesRepository.ssdl|res://*/FreeWebFilesRepository.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=.;Initial Catalog=FreeWebFiles;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
<connectionStrings>

但它还是不喜欢这个。我找到了一些资源,这些资源表明我正在使用EF连接字符串(而且我正在使用)。我尝试删除它的元数据部分,但是,不管我做什么,它都会引发异常。

既然微软似乎决定不仔细地记录这个过程(如果有的话),那么有没有人知道这一点呢?如何使SimpleMembership页面工作?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-24 00:30:34

首先,您使用的是EntityClient连接字符串,它与SimpleMembership不兼容。SimpleMembership需要一个SqlClient提供程序类型连接字符串(即它没有元数据,而提供程序类型是SqlClient)。

其次,在InitializeSimpleMembershipAttribute.cs类中设置使用的连接字符串,特别是调用WebSecurity.InitializeDatabaseConnection的行。你可以把这个换成你想要的任何东西。DefaultConnection是machine.config中提供的默认连接字符串,在默认情况下不会出现在web.config中。

票数 3
EN

Stack Overflow用户

发布于 2013-06-24 00:30:26

您的web.config文件中有这些部分吗?

代码语言:javascript
复制
<roleManager enabled="true" defaultProvider="simple">
  <providers>
    <clear/>
    <add name="simple" type="WebMatrix.WebData.SimpleRoleProvider, WebMatrix.WebData"/>
  </providers>
</roleManager>
<membership defaultProvider="simple">
  <providers>
    <clear/>
    <add name="simple" type="WebMatrix.WebData.SimpleMembershipProvider, WebMatrix.WebData"/>
  </providers>
</membership>
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17266322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档