1

我有一个 MVC3 项目,它首先使用 EF 4.1 数据库和 SQL Server CE 数据库。在我安装了 SQL Server Express 的开发盒上,一切正常。但是,当部署到未安装 SQL Server Express(或任何 SQL Server 实例)的另一台服务器时,连接失败是可以理解的。是否可以在没有本地 SQL Server 实例的机器上将 EF 4.1 与 SQL Server CE 数据库一起使用?

即使我尝试引用远程 SQL 实例,我也会收到错误

键“attachdbfilename”的值无效

以下是连接字符串的样子:

 <add name="AlertsEntities" connectionString="metadata=res://*/Models.AlertsModel.csdl|res://*/Models.AlertsModel.ssdl|res://*/Models.AlertsModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.\SQLEXPRESS;attachdbfilename=|DataDirectory|\Alerts.mdf;integrated security=True;connect timeout=30;user instance=True;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
4

2 回答 2

0

只是为了更新我们如何解决这个问题,我们最终只是将 SQL express 安装在与使用 SqlCE 的应用程序相同的服务器上。我接受这个答案只是因为另一个人根本没有真正回答这个问题。

于 2012-11-01T19:26:18.943 回答
0

实际上,我不久前就在博客上写过。http://enterpriseyness.com/2011/11/deploying-an-asp-net-web-application-with-sql-ce-4-entity-framework-without-installation/

如果您在 web 项目上单击鼠标右键,您将看到一个“添加可部署依赖项”菜单项。另外,不要忘记将 SQL CE 提供程序工厂添加到您的 Web.config。

添加可部署的依赖项

于 2012-09-13T20:31:24.987 回答