如何首先与实体框架代码建立一对一关系EF和SO页面中的一对一关系,但这对我不起作用。这是我的模型:Account:publicintId{get;设置;}公共虚拟AccountConfigAccountConfig{get;设置;}AccountMap:HasKey(t=>t.Id);HasRequired(t=>t.AccountConfig)。WithOptional();账户配置:publicintId{get;设置;}publicintAccountId{get;set;}publicvirtualAccountAccount{get;set;}账户配置图:HasKey(t=>t.Id);HasRequired(t=>t.Account).WithOptional(t=>t.AccountConfig);执行时,Account上的AccountConfig属性为NULL,并且AccountConfig上的Account属性记录不正确(巧合的是,检索到的Account.Id与AccountConfig.Id相同,但我不知道这是否意味着什么)。在数据库中,Account表没有引用AccountConfig记录,但AccountConfig表使用AccountId列引用了Account记录。最终结果是我可以从Account引用AccountConfig,并且(如果可能)从Account引用AccountConfig。使用EF,一对一关系仅在共享主键的表上受支持。您的AccountConfig表有自己的主键和一个指向Account的外键。EF仅支持与此配置的一对多关系。Thisarticle对EF中的1:1和1:0..1关系有很好的解释。此处的限制是EF不支持唯一约束这一事实的副产品。以上就是C#学习教程:Howtoestablishaone-to-onerelationshipwithEntityFrameworkCodeFirst。代表立场,如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
