我正在尝试使用EF并收到错误,我不太明白。我有一个有5列的数据库表。 SearchChannelID(int),SearchProductID(int),SearchKeywordID(int),SearchTypeID(int),TermToFind(nvarchar(50))。前4个形成主键。表称为SearchCriteria。
在VS(EF6)中创建模型后,我创建了2个新实体--OragnicScrapeCriteria和PScrapeCriteria基于SearchCriteria。
https://www.dropbox.com/s/vcwt5grg8laol10/Screenshot%202014-08-14%2015.40.00.png
Error 1 Error 3025: Problem in mapping fragments starting at line 507:Must specify mapping for all key properties (SearchCriteria.SearchChannelID, SearchCriteria.SearchProductID, SearchCriteria.SearchKeywordID, SearchCriteria.SearchTypeID) of table SearchCriteria.
D:\Projects\Charon\Charon\CharonDataAccess\CharonModel.edmx 508 513 CharonDataAccess
Error 2 Error 3025: Problem in mapping fragments starting at line 515:Must specify mapping for all key properties (SearchCriteria.SearchChannelID, SearchCriteria.SearchProductID, SearchCriteria.SearchKeywordID, SearchCriteria.SearchTypeID) of table SearchCriteria.
D:\Projects\Charon\Charon\CharonDataAccess\CharonModel.edmx 516 521 CharonDataAccess
然后我从基础实体中删除了鉴别器(SearchTypeID)。我的表映射是否适用于每个派生实体的Discriminator'Maps to SearchCriteria'。
这是因为SearchTypeID是主键的一部分,它是在两个派生实体之间分段的,如果有的话,我的选择是什么?
谢谢,
迈克尔