一个模型中相同 属性 的多个实例
Multiple instances of the same Property in one Model
这是我的模型代码:
public class Dog
{
[Key]
public int DogID { get; set; }
[Required()]
[Display(Name = "Namn")]
public string DogName { get; set; }
[Required()]
public int KennelID { get; set; }
[ForeignKey("KennelID")]
public virtual Kennel Kennel { get; set; }
[Required()]
public int RaceID { get; set; }
[ForeignKey("RaceID")]
public virtual Race Race1 { get; set; }
public int RaceID { get; set; }
[ForeignKey("RaceID")]
public virtual Race Race2 { get; set; }
public int RaceID { get; set; }
[ForeignKey("RaceID")]
public virtual Race Race3 { get; set; }
public int RaceID { get; set; }
[ForeignKey("RaceID")]
public virtual Race Race4 { get; set; }
错误信息:
Models.Dog' already contains a definition for 'RaceID'
Models.Dog' already contains a definition for 'RaceID'
Models.Dog' already contains a definition for 'RaceID'
我不明白为什么 MVC 一开始就不让我这样做!为什么模型不能有多个属性 (Race1, Race2, Race3, Race4
) 从 Race
模型的 RaceID
ForeignKey 属性 中选择?
这真让我恼火。我查看了有关此错误的一些搜索结果,但我不理解它们。
所以问题是:我如何将一个 属性 的多个实例添加到一个模型? 我在控制器中读到了一个 AllowMultiple 片段,但我需要理解我在构建什么。
是否有任何指南可以让我更好地理解模型关系?
我更喜欢视频或分步式的指南。
你不能有多个 class 成员同名(在你的例子中是 RaceID)。
更改为:
public int Race2ID { get; set; }
[ForeignKey("Race2ID")]
public virtual Race Race2 { get; set; }
等等。 Race2ID
将是第二场比赛的id。
这是我的模型代码:
public class Dog
{
[Key]
public int DogID { get; set; }
[Required()]
[Display(Name = "Namn")]
public string DogName { get; set; }
[Required()]
public int KennelID { get; set; }
[ForeignKey("KennelID")]
public virtual Kennel Kennel { get; set; }
[Required()]
public int RaceID { get; set; }
[ForeignKey("RaceID")]
public virtual Race Race1 { get; set; }
public int RaceID { get; set; }
[ForeignKey("RaceID")]
public virtual Race Race2 { get; set; }
public int RaceID { get; set; }
[ForeignKey("RaceID")]
public virtual Race Race3 { get; set; }
public int RaceID { get; set; }
[ForeignKey("RaceID")]
public virtual Race Race4 { get; set; }
错误信息:
Models.Dog' already contains a definition for 'RaceID'
Models.Dog' already contains a definition for 'RaceID'
Models.Dog' already contains a definition for 'RaceID'
我不明白为什么 MVC 一开始就不让我这样做!为什么模型不能有多个属性 (Race1, Race2, Race3, Race4
) 从 Race
模型的 RaceID
ForeignKey 属性 中选择?
这真让我恼火。我查看了有关此错误的一些搜索结果,但我不理解它们。
所以问题是:我如何将一个 属性 的多个实例添加到一个模型? 我在控制器中读到了一个 AllowMultiple 片段,但我需要理解我在构建什么。
是否有任何指南可以让我更好地理解模型关系? 我更喜欢视频或分步式的指南。
你不能有多个 class 成员同名(在你的例子中是 RaceID)。
更改为:
public int Race2ID { get; set; }
[ForeignKey("Race2ID")]
public virtual Race Race2 { get; set; }
等等。 Race2ID
将是第二场比赛的id。