NerdDinner ASP教程 - Linq-to-Sql不为OneToMany创建集合

时间:2014-02-14 09:36:32

标签: c# asp.net-mvc nerddinner

我正在尝试遵循Microsoft的ASP.NET Nerd Dinner教程,但我遇到了linq-to-sql部分的问题。

我有两个数据库Dinner和RSVP,主键和标识设置为DinnerIDRsvpID。然后我使用外键FK_RSVP_Dinner和pk RSVP.DinnerID

创建了关系Dinner.DinnerID

创建LinqToSql类并将两个表拖入时,它会成功创建OneToMany关系。

LinqToSql Class 但是,NerdDinner.designer.cs文件不包含任何名为RSVP的集合,而只包含变量RSVP。

enter image description here

我做错了什么?

1 个答案:

答案 0 :(得分:1)

要检查的事情:

查看RSVP部分类定义和Dinner部分类定义下的NerdDinner.dbml的designer.cs文件:

公共部分类RSVP ....

  1. 确保RsvpID是主键的标识类型,并自动生成密钥。
  2. [列(存储=" _RsvpID",AutoSync = AutoSync.OnInsert,DbType =" Int NOT NULL IDENTITY",IsPrimaryKey = true,IsDbGenerated = true)]

    1. 应该已生成私有EntityRef类型:
    2. private EntityRef _Dinner;

      1. 检查关联属性: [协会(姓名="晚餐_RSVP",存储=" _Dinner",ThisKey =" DinnerID",OtherKey =" DinnerID",IsForeignKey = true )] 公共晚宴......
      2. 为晚餐部分课程做同样的事情......

        1. 是否正确定义了主键?
        2. 是否定义了EntitySet _Rsvps?
        3. 是否存在关联定义: [协会(姓名="晚餐_RSVP",存储=" _RSVP",ThisKey =" DinnerID",OtherKey =" DinnerID")] public EntitySet RSVP ......
        4. 希望有帮助...