无法find所需的.Net框架数据提供程序。 它可能没有安装。 – 当遵循mvc3 asp.net教程

我正在关注ASP.NET MVC 3音乐商店应用程序教程,但我一直陷入第4部分: http : //www.asp.net/mvc/tutorials/mvc-music-store-part-4 。 它一直告诉我,我没有安装SQL数据提供者:

确切的错误:

System.ArgumentException was unhandled by user code Message=Unable to find the requested .Net Framework Data Provider. It may not be installed. Source=System.Data StackTrace: at System.Data.Common.DbProviderFactories.GetFactory(String providerInvariantName) at System.Data.Entity.Internal.LazyInternalConnection.TryInitializeFromAppConfig(String name) at System.Data.Entity.Internal.LazyInternalConnection.Initialize() at System.Data.Entity.Internal.LazyInternalConnection.get_ConnectionHasModel() at System.Data.Entity.Internal.LazyInternalContext.InitializeContext() at System.Data.Entity.Internal.InternalContext.Initialize() at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType) at System.Data.Entity.Internal.Linq.InternalSet`1.Initialize() at System.Data.Entity.Internal.Linq.InternalSet`1.GetEnumerator() at System.Data.Entity.Infrastructure.DbQuery`1.System.Collections.Generic.IEnumerable<TResult>.GetEnumerator() at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source) at MusicApplication.Controllers.StoreController.Index() in C:\Users\Michelle\documents\visual studio 2010\Projects\MusicApplication\MusicApplication\Controllers\StoreController.cs:line 18 at lambda_method(Closure , ControllerBase , Object[] ) at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass15.<InvokeActionMethodWithFilters>b__12() at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation) InnerException: 

我已经添加了对System.Data.SqlServerCe的引用 – 仍然有相同的错误。 任何指导将非常感激

我能够通过使用NuGet在Visual Studio 2010中解决与此类似的问题。

转到工具>库包pipe理器>pipe理NuGet包的解决scheme…

在对话框中search“EntityFramework.SqlServerCompact”。 你会发现一个包含“允许SQL Server Compact 4.0与entity framework一起使用”的描述。 安装这个软件包。

在你的web.config文件中插入一个和下面类似的元素:

 <entityFramework> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlCeConnectionFactory, EntityFramework"> <parameters> <parameter value="System.Data.SqlServerCe.4.0" /> </parameters> </defaultConnectionFactory> </entityFramework> 

我遇到过同样的问题。 我在C:\ Windows \ assembly中检查了System.Data.SqlServerCe的版本。 这是3.5.1.0。 所以我从下面的链接(x86)安装版本4.0.0,并正常工作。

http://www.microsoft.com/download/en/details.aspx?id=17876

将这些行添加到您的web.config文件中:

 <system.data> <DbProviderFactories> <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory,MySql.Data, Version=6.6.4.0, Culture=neutral, PublicKeyToken=C5687FC88969C44D"/> </DbProviderFactories> </system.data> 

将您的提供者从MySQL更改为SQL Server或您要连接的任何数据库提供者。

这个错误主要是由于处理器体系结构与安装的ei x86与x64不兼容解决scheme:转到解决scheme资源pipe理器>项目属性>编译选项卡>高级编译选项您必须将目标CPU从X64更改为X86保存新设置并重新编译解。 我试了一下,它工作得很好。 希望这会帮助你。 马利克

我在WCF服务上有一个SqlClient的模拟器问题。 我的解决scheme是把这些行放在客户端app.config中

  <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" /> </startup> 

希望它有助于某人..

在我的情况下,这个问题是由于SQL数据库连接问题造成的。 我刚断开连接,然后重新连接devise视图中的SQL数据源。 我正在备份和运行。 希望这适用于每个人。

在跟随第4部分中的MvcMusicStore教程时我有同样的地方,并用这个replace给定的连接string:

add name =“MusicStoreEntities”connectionString =“data source =。\ SQLEXPRESS; Integrated Security = SSPI; database = MvcMusicStore; User ID = sa; password =”providerName =“System.Data.SqlClient”/>

它为我工作。

这发生在我身上,因为我创build了一个新的项目,试图使用System.Web.Providers DefaultMembershipProvider成员。 我的数据库和应用程序被设置为使用System.Web.Security.SqlMembershipProvider 。 我不得不更新提供程序和连接string(因为这个提供程序似乎有一些奇怪的连接string要求),以使其工作。