【发布时间】:2021-08-05 07:59:01
【问题描述】:
实体需要映射到表还是可以映射到存储过程?
我有一个不映射到任何特定表的实体,而是映射到一个存储过程。
我收到以下错误:
指定的架构无效。错误: Model.msl(6,6):错误 2062:否 为实例指定的映射 EntitySet 和 AssociationSet 中的 EntityContainer HNFS_ProviderEntities。
【问题讨论】:
实体需要映射到表还是可以映射到存储过程?
我有一个不映射到任何特定表的实体,而是映射到一个存储过程。
我收到以下错误:
指定的架构无效。错误: Model.msl(6,6):错误 2062:否 为实例指定的映射 EntitySet 和 AssociationSet 中的 EntityContainer HNFS_ProviderEntities。
【问题讨论】:
似乎是的:http://msdn.microsoft.com/en-us/library/bb896279.aspx
事实证明,我需要使用复杂类型而不是实体。
【讨论】:
在我的例子中,我更改了 EDMX 文件的名称,并没有相应地更新连接字符串中的元数据。
实体框架设计器对此似乎没问题,但是在运行时它会抛出错误 2062。
参考以下连接字符串示例中的EDMXFILENAME,确保三个地方都正确。
<add name="Entities" connectionString="metadata=res://*/EDMXFILENAME.csdl|res://*/EDMXFILENAME.ssdl|res://*/EDMXFILENAME.msl;provider=System.Data.SqlClient;provider connection string="data source=SERVER;initial catalog=DATABASENAME;persist security info=True;user id=USER;password=PASSWORD;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
【讨论】: