c# – 无法找到请求的.Net Framework数据提供程序.程序(SqlClient)

c# – 无法找到请求的.Net Framework数据提供程序.程序(SqlClient),第1张

概述我正在尝试使用数据库首次从SQL Server迁移(2005)来设置一个简单的ASP.NET MVC 4 webapp.我在数据库中创建了表,并使用Entity Framework在代码中创建了对象.我可以使用这些对象访问数据. 当我尝试使用WebSecurity.InitializeDatabaseConnection(“FLMREntities”,“UserProfile”,“UserId”, 我正在尝试使用数据库首次从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=&quot;data source=notes.marIEtta.edu;                        initial catalog=muskwater;                        user ID=muskwater;password=********;                        MultipleActiveResultSets=True;                        App=EntityFramework&quot;"      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=&quot;data source=.\sqlExpress;initial catalog=ChemicalReporter;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" 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);
总结

以上是内存溢出为你收集整理的c# – 无法找到请求的.Net Framework数据提供程序.程序(SqlClient)全部内容,希望文章能够帮你解决c# – 无法找到请求的.Net Framework数据提供程序.程序(SqlClient)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1243641.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存