我正在尝试使用 sql server 数据库中的 asp.net 成员身份创建一个 MVC 3 应用程序。我希望能够在此应用程序上使用 Entity Framework 进行开发。
我已通过数据库创建并使用 aspnet_regsql 实用程序将成员资格表添加到数据库中。我坚持的部分是如何使用我的应用程序连接到这个数据库。
我已经向项目添加了一个实体模型,它在 web.config 中生成了一个新的连接字符串,并且我尝试将所有与成员资格相关的条目上的 connectionStringName 属性更改为新字符串,如下所示:
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="BlogV1Entities" applicationName="/" />
但这不起作用,因为我在尝试通过应用程序或 ASP.NET 配置实用程序创建用户时遇到错误
An error occurred while attempting to initialize a System.Data.SqlClient.SqlConnection object. The value that was provided for the connection string may be wrong, or it may contain an invalid syntax. Parameter name: connectionString
任何人都可以指出正确的方向以正确设置此设置,以便我的应用程序可以访问数据库吗?
编辑:作为对第一条评论的回应,连接字符串如下所示:
connectionString="metadata=res://*/BlogV1Model.csdl|res://*/BlogV1Model.ssdl|res://*/BlogV1Model.msl;provider=System.Data.SqlClient;provider connection string="data source=jesse-laptop;initial catalog=BlogV1;integrated security=True;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
最佳答案
Entity Framework 连接字符串在使用 asp.net 成员资格时将不起作用。我的项目中没有这样; 也就是说,您需要单独的连接字符串;
您的成员(member)连接字符串;
<add name="DAConnection" connectionString="Data Source=.\sqlexpress;initial catalog=E:\MYWORK\DIGITALASSETSMVC3\DAMVC3\APP_DATA\DAMVC3.MDF;integrated security=True" providerName="Syste.Data.SqlClient" />
你的 Entity Framework 连接字符串;
<add name="DAEntities" connectionString="metadata=res://*/Models.DAModel.csdl|res://*/Models.DAModel.ssdl|res://*/Models.DAModel.msl;provider=System.Data.SqlClient;provider connection string="data source=.\sqlexpress;initial catalog=E:\MYWORK\DIGITALASSETSMVC3\DAMVC3\APP_DATA\DAMVC3.MDF;integrated security=True;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
关于sql-server - 使用 SQL Server 的 ASP.NET 成员资格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11316492/