我有一个以 .NET 4.0 为目标并使用 EF 5.0 的项目。将目标框架更改为 4.5(并更新 EF 5.0 引用以使用 .NET 4.5 程序集)后,数据注释似乎不再起作用。例如:
[Table("ApplicationSession", Schema = "Application")]
public class ApplicationSessionEntity
{
[Key, ForeignKey("GenericSession")]
public int GenericSessionID { get; set; }
...
以前可以正常工作,但现在在运行时,DbContext
抛出一个InvalidOperationException
: Unable to determine the principal end of an association...
。
我可以添加 Fluent api 调用来解决这个问题(确实如此),但是它无法识别该表不在“dbo”模式中。再说一次,我知道 Fluent api 可以用来解决这个问题,但是为什么数据注释突然被忽略了呢?
谢谢!