c# – 无法找到请求的.Net Framework数据提供程序.程序(SqlClien
我正在尝试使用数据库首次从SQL Server迁移(2005)来设置一个简单的ASP.NET MVC 4 webapp.我在数据库中创建了表,并使用Entity Framework在代码中创建了对象.我可以使用这些对象访问数据.
当我尝试使用WebSecurity.InitializeDatabaseConnection(“FLMREntities”,“UserProfile”,“UserId”,“UserName”,true)初始化WebSecurity时出现问题;在Global.asax.cs文件中.我已经尝试使用模板附带的InitializeSimpleMembershipAttribute过滤器并遇到了同样的问题.我收到错误消息: Unable to find the requested .Net Framework Data Provider. It may not be installed. 这是相关的连接字符串: <add name="FLMREntities" connectionString="metadata=res://*/Models.FLMR.csdl|res://*/Models.FLMR.ssdl|res://*/Models.FLMR.msl; provider=System.Data.SqlClient; provider connection string="data source=notes.marietta.edu; initial catalog=muskwater; user id=muskwater;password=********; MultipleActiveResultSets=True; App=EntityFramework"" providerName="System.Data.EntityClient" /> 此外,我在数据库中创建了成员资格表,以匹配模板创建的内容.如果我将Initialize调用中的最后一个参数更改为false(这样它不会尝试自动创建表),则返回它找不到UserProfile表.我也尝试过名称的变体,例如[dbo].[UserProfile]. 我只需要一个简单的帐户模型,允许用户登录并允许某些用户查看更多内容. 解决方法
我有类似的问题,我做了什么:
我修改了默认连接.我已经有了edmx模型的连接字符串,如下所示: <add name="ChemicalReporterEntities" connectionString="metadata=res://*/ChemicalDB.csdl|res://*/ChemicalDB.ssdl|res://*/ChemicalDB.msl;provider=System.Data.SqlClient;provider connection string="data source=.SQLExpress;initial catalog=ChemicalReporter;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" /> 但我不能将它与SimpleMemebrship提供程序一起使用.所以在Visual Studio中我打开了Server Explorer>数据连接,我选择了我的连接,右键单击,属性,我从那里复制了连接字符串并将其粘贴到defaultConnection: <add name="DefaultConnection" connectionString="Data Source=.SQLExpress;Initial Catalog=ChemicalReporter;Integrated Security=True;MultipleActiveResultSets=True;Application Name=EntityFramework" providerName="System.Data.SqlClient" /> 之后,我更改了WebSecurity.InitializeDatabaseConnection以使用DefaultConnection. WebSecurity.InitializeDatabaseConnection("DefaultConnection","UserProfile","UserId","UserName",true); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |