我在使用 EntityDataSource 和 .NET Framework June CTP 的服务器上安装 Web 应用程序时遇到问题。我在 MSDN 论坛上发布了这个问题,但仍然没有答案: EF with POCO templates and DbContext throws MetadataException when installed on server
在带有 IIS 7 的 windows 2008 服务器上安装应用程序时,以及将 EntityDataSource 与使用 POCO 和 DbContext 所需的 June CTP 框架结合使用时,会引发以下异常。
System.Web.HttpUnhandledException (0x80004005):引发了“System.Web.HttpUnhandledException”类型的异常。---> System.Data.MetadataException:指定的架构无效。错误:Library.csdl(2,9):警告 0005:找不到属性“命名空间”的架构信息。Library.csdl(2,34):警告 0005:找不到属性“别名”的架构信息。Library.csdl(2,2):错误 0010:命名空间中的元素架构
http://schemas.microsoft.com/ado/2009/11/edm
对于根元素来说是意外的。以下命名空间之一中的预期架构:http://schemas.microsoft.com/ado/2006/04/edm
,http://schemas.microsoft.com/ado/2007/05/edm
,http://schemas.microsoft.com/ado/2008/09/edm
. 在 System.Data.Metadata.Edm.EdmItemCollection.LoadItems(IEnumerable1 xmlReaders, IEnumerable
1 sourceFilePaths, SchemaDataModelOption dataModelOption, DbProviderManifest providerManifest, ItemCollection itemCollection, Boolean throwOnError)
当我们创建一个没有 June CTP 框架的测试项目时,它正在工作。当我们不将 EntityDataSource 与 June CTP 框架一起使用时,它也可以工作。我们使用这个 EntityDataSource 开发了几个月,因此更改代码并使用其他东西并不容易。