我正在尝试部署一个基本的MVC 4应用程序,该应用程序使用Entity Framework 6(Code First)和SQL Compact 4.0,在已安装IIS的干净的Windows 7上进行(未安装mvc 4和sql compact 4.0)。
我在数据库项目中安装了以下nuget包:
- EntityFramework(版本6.0.0-alpha2) - EntityFramework.SqlServerCompact(版本6.0.0-alpha2) - Microsoft.AspNet.Providers(版本1.2) - Microsoft.AspNet.Providers.Core(版本1.2) - Microsoft.SqlServer.Compact(版本4.0.8876.1)
在web.config中,我有以下配置:
我在数据库项目中安装了以下nuget包:
- EntityFramework(版本6.0.0-alpha2) - EntityFramework.SqlServerCompact(版本6.0.0-alpha2) - Microsoft.AspNet.Providers(版本1.2) - Microsoft.AspNet.Providers.Core(版本1.2) - Microsoft.SqlServer.Compact(版本4.0.8876.1)
在web.config中,我有以下配置:
<connectionStrings>
<add name="[Name]" connectionString="Data Source=|DataDirectory|[FileName].sdf" providerName="System.Data.SqlServerCe.4.0" />
</connectionStrings>
......................
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework">
<parameters>
<parameter value="System.Data.SqlServerCe.4.0" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlServerCe.4.0" type="System.Data.Entity.SqlServerCompact.SqlCeProviderServices, EntityFramework.SqlServerCompact, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</providers>
</entityFramework>
Bin文件夹(sql ce文件在amd64和x86文件夹中):
- [amd64]
- [x86]
- Antlr3.Runtime.dll
- DotNetOpenAuth.AspNet.dll
- DotNetOpenAuth.Core.dll
- DotNetOpenAuth.OAuth.Consumer.dll
- DotNetOpenAuth.OAuth.dll
- DotNetOpenAuth.OpenId.dll
- DotNetOpenAuth.OpenId.RelyingParty.dll
- EntityFramework.dll
- EntityFramework.SqlServer.dll
- EntityFramework.SqlServer.xml
- EntityFramework.SqlServerCompact.dll
- EntityFramework.SqlServerCompact.xml
- EntityFramework.xml
- Microsoft.Web.Infrastructure.dll
- Microsoft.Web.WebPages.OAuth.dll
- Newtonsoft.Json.dll
- ShipMedProto.DB.dll
- ShipMedProto.DB.pdb
- ShipMedProto.Web.dll
- ShipMedProto.Web.pdb
- System.ComponentModel.DataAnnotations.dll
- System.Data.DataSetExtensions.dll
- System.Data.SqlServerCe.dll
- System.Data.SqlServerCe.Entity.dll
- System.Net.Http.Formatting.dll
- System.Web.Helpers.dll
- System.Web.Http.dll
- System.Web.Http.WebHost.dll
- System.Web.Mvc.dll
- System.Web.Optimization.dll
- System.Web.Providers.dll
- System.Web.Razor.dll
- System.Web.WebPages.Deployment.dll
- System.Web.WebPages.dll
- System.Web.WebPages.Razor.dll
- WebActivatorEx.dll
- WebGrease.dll
- WebMatrix.Data.dll
- WebMatrix.WebData.dll
当我部署到干净的机器上时,我会收到以下错误消息:
无法找到所请求的.NET Framework数据提供程序。可能未安装。
在我的开发机器上,它正常工作。(我已经安装了sql ce)
你有什么线索,我做错了什么吗?