我首先使用Entity Framework代码来设计数据库。
我有2个与一对多关系的模型。一个“Foo”可以有如下许多“FooData” -
keyWindow
当我尝试在MVC中为“Foo”添加控制器时,使用“Foo”作为脚手架模型,它给了我这个错误 - “Multiplicity在Role中无效。因为Dependent Role指的是关键属性,依赖角色的多重性的上限必须是1“。
我会在这里感谢一些帮助。
谢谢
答案 0 :(得分:1)
由于你如何定义,因此两者都使用相同的密钥,因此它是一对一的关系。如果你想要真正的一对多,你需要添加/创建另一个字段并将它们设置为FooData表/实体上的复合键。
public class Foo {
[Key]
public string serialNumber{get; set;}
public virtual ICollection<FooData> FooDatas{get; set;}
}
public class FooData {
[Key, Column(Order = 0),ForeignKey("foo")]
public string SerialNum {get; set;}
[Key,Column(Order=1)]
public int DataId {get;set;}
public virtual Foo foo {get; set;}
}