将数据保存到数据库时遇到了一些麻烦。基本上,我有一个与其他表关联的主表(下面的示例)。将数据保存到关系数据库(实体框架)
Tbl_Listing
- ID
- 用户ID - 相联系的ID在用户表
- 类别ID - 相联系的ID在分类表格
- LevelID - 相联系的ID在等级表。
- 名称
- 地址
通常情况下,很容易对我来说将数据添加到数据库(使用实体框架)。但是,我不确定如何将数据添加到具有关联的字段。众多的ID字段只需要保存一个与相关表中的ID相对应的int值。
例如;当我尝试按以下方式访问列时,我得到一个“未设置为对象实例的对象引用”。错误。
Listing NewListing = new Listing();
NewListing.Tbl_User.ID = 1;
NewListing.Tbl_Category.ID = 2;
...
DBEntities.AddToListingSet(NewListing);
DBEntities.SaveChanges();
我使用的,而不是NewListing.UserID NewListing.Tbl_User.ID因为用户ID字段不是可以通过智能感知。
如果我尝试为每个相关字段创建一个对象,我会得到一个“两个对象之间的关系无法定义,因为它们连接到不同的ObjectContext对象。”错误。
使用这种方法,我想添加没有上面显示的.ID的对象 - 例如NewListing.User = UserObject。
我知道这应该很简单,因为我只是想引用主列表表中关联表的ID。任何帮助将不胜感激。
由于提前,
-S
谢谢,这很好。我必须将Single()更改为First(),因为Single()显然不受Linq To Entities支持。再次感谢! – sheefy 2010-02-20 12:15:48