我试图在我的MVC 3应用程序中使用SimpleMembership。但是我得到以下错误:
System.ArgumentException未处理
通过用户代码。找不到
要求的.Net Framework数据
提供者。它可能没有安装。
我正在使用EF,并且框架显然在那里,因为如果没有SimpleMembership API,我的应用程序就可以完美运行
这是Web配置文件中的设置:
<connectionStrings>
<add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />
<add name="SeniorProjectModelContainer" connectionString="metadata=res://*/Models.SeniorProjectModel.csdl|res://*/Models.SeniorProjectModel.ssdl|res://*/Models.SeniorProjectModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=GOGOTOPPY;Initial Catalog=SPMT;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
</connectionStrings>
以及它在App_Start文件夹的Membership文件中的外观:
WebSecurity.InitializeDatabaseConnection(connectionStringName: "SeniorProjectModelContainer", userTableName: "Users", userIdColumn: "UserId", userNameColumn: "UserName", autoCreateTables: true);
任何帮助将不胜感激!
Update:
快速的解决方法是将元数据部分从连接字符串中删除,并将提供程序名称更改为SqlClient,使其类似于以下内容:
<connectionStrings>
<add name="Membership" connectionString="Data Source=serverName;Database=datebaseName;User ID=idName;Password=password;Trusted_Connection=False;Encrypt=True;" providerName="System.Data.SqlClient" />
</connectionStrings>
连接字符串有什么缺点吗?
最佳答案
不确定如何安装simplemembership,但尝试以nuget方式进行安装,例如,
http://www.nuget.org/List/Packages/SimpleMembership.Mvc3
关于asp.net-mvc - SimpleMembership API connectionStringName错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6077137/