我有以下代码尝试将对象添加到数据库中:
public static void saveAudit(List<AUDIT> audit)
{
Entities dao = new Entities();
foreach (CMUAUDIT a in audit)
{
dao.CMUAUDITs.AddObject(a);
}
dao.SaveChanges();
}
但是我收到错误消息:
“...不包含'AddObject'的定义,也没有扩展名 方法'AddObject'接受类型'System.Data.Entity.DbSet'的第一个参数可以找到(你是否缺少using指令或汇编引用?)“
我已经做了一些搜索,并提到主键与它有关。有什么建议吗?
如果有任何不同,我正在使用DB2数据库吗?
答案 0 :(得分:6)
...System.Data.Entity.DbSet...
:显然,您的课程Entities
来自DbContext
而不是ObjectContext
。在这种情况下,CMUAUDITs
将是DbSet<T>
(而不是ObjectSet<T>
)。将实体添加到DbSet<T>
的正确方法是:
dao.CMUAUDITs.Add(a);
AddObject
仅适用于ObjectSet<T>
。