5

データベースにオブジェクトを追加しようとしている次のコードがあります。

public static void saveAudit(List<AUDIT> audit)
{
 Entities dao = new Entities();

 foreach (CMUAUDIT a in audit)
 {
    dao.CMUAUDITs.AddObject(a);
 }

 dao.SaveChanges();
}

ただし、次のエラー メッセージが表示されます。

「... 'AddObject' の定義が含まれておらず、タイプ 'System.Data.Entity.DbSet' の最初の引数を受け入れる拡張メソッド 'AddObject' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか? )"

私はいくつかの検索を行いましたが、主キーがそれと関係があるという言及があります。助言がありますか?

DB2 データベースを使用していますが、違いがある場合はどうすればよいですか?

4

1 に答える 1

9

...System.Data.Entity.DbSet...: どうやらあなたのクラスEntitiesは から派生したものDbContextではなくObjectContext. この場合CMUAUDITsDbSet<T>(ではなく) になります。ObjectSet<T>エンティティを に追加する正しい方法DbSet<T>は次のとおりです。

dao.CMUAUDITs.Add(a);

AddObjectでのみ使用できますObjectSet<T>

于 2012-05-25T12:13:44.187 に答える