2010-09-28 19 views
0

我使用SQL Server Express 2008与Web Developer Express 2010构建了此应用程序。我将mdf/log文件从我的服务器下载到本地,并将它们作为数据库附加到SQL 2005兼容性。在IIS7之后更改实体框架的connectionstring MVC发布结果中的元数据错误

我正在尝试发布到我的生产服务器。该服务器正在使用SQL Express 2005和Windows Server Web。我试图改变web.config连接字符串,但我得到一个“无法加载指定的元数据资源”错误。我也是一个新手/黑客。

下面就来看看我的生产线:

<add name="ProductionEntities" connectionString="metadata=res://*/Production.csdl|res://*/Production.ssdl|res://*/Production.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=Production\SQLEXPRESS;Initial Catalog=ProductionCatalog;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient"/> 

下面就一起来看看我的dev的字符串:

<add name="DevelopmentEntities" connectionString="metadata=res://*/Models.Development.csdl|res://*/Models.Development.ssdl|res://*/Models.Development.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=Development\SQLEXPRESS;Initial Catalog=DevelopmentCatalog;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /></connectionStrings> 

我希望有人可以帮我指出正确的方向。 谢谢,我爱你们 -Joe

+0

不是很多去这里... – asfsadf 2010-09-28 03:06:26

回答

0

生产连接字符串的元数据部分不应该不同于开发连接字符串。 res:前缀表示实体名称将在要部署的二进制程序集中烘焙的资源中查找CSDL,SSDL和MSDL文件。这些资源文件是从您的edmx文件生成的,并且它们在调试和发布版本之间不会发生变化。因此,只需将连接字符串的元数据部分从开发复制到生产即可。

+0

谢谢保罗。当我的提供程序字符串不正确时,作为newb/hack我开始搞乱元数据,这就是我得到错误的原因。把它放回原来的样子显示我的用户/密码不正确。 感谢您的帮助。 – MrGrigg 2010-09-28 13:18:05

0

从连接字符串中删除Integrated Security = True。