使用EF agains SQL Server CE 4.0数据库时出现Azure错误

时间:2011-10-24 21:43:51

标签: entity-framework azure

我有一个ASP.NET MVC 3应用程序,我想部署到Azure。该应用程序对App_Data目录中的SQL Server CE 4.0数据库使用EF。

该站点在本地运行正常,但是当我从ASP.NET MVC 3 Web角色引用它并将其发布到Azure时,我收到此错误:

“无法找到请求的.Net Framework数据提供程序。可能未安装。” 完整的例外情况可以在此处查看:http://52df5a4a5c1b4d10a927078bb8a06d15.cloudapp.net/drug

这是来自web.config文件的连接字符串:

<add name="DbEntities" connectionString="metadata=res://*/AMDBModeledmx.csdl|res://*/AMDBModeledmx.ssdl|res://*/AMDBModeledmx.msl;provider=System.Data.SqlServerCe.4.0;provider connection string=&quot;Data Source=|DataDirectory|\AMDB.sdf&quot;" providerName="System.Data.EntityClient" />

我尝试将我的项目编译为目标x86,并将System.Data.Entity引用的“Copy Local”属性设置为true。什么都没有帮助。

是否可以在Azure中运行Web应用程序并使用基于文件的数据库?我知道这可能是多个实例的问题,但我只使用一个VM。

1 个答案:

答案 0 :(得分:3)

我看不到您的错误页面,但看起来缺少SQL CE数据提供程序DLL。您是否尝试过遵循这些说明?

http://blogs.msdn.com/b/webdevtools/archive/2011/01/06/how-to-bin-deploy-sql-compact-edition-4-0-and-razor-web-projects.aspx