2011-08-18 5 views
27

私はthis articleや他の多くを読み取ることによって、自分の状況を書いたが、これcontext.Entry(obj)が定義されている場所テーマのどれも説明していない、私は意味さえthis articleを読むことによって、私は、このメソッドを実装する方法を理解カント、私は次のエラーを取得する:どこがcontext.Entry()ですか?

エラー36「Domain.Entities.OurWebSiteContext」がある(見出さ「エントリ」の 定義とするかもしれないタイプ「Domain.Entities.OurWebSiteContext」の 最初の引数を受け付けない拡張メソッド「エントリ」を含んでいませんあなたはusingディレクティブまたはアセンブリ参照がありませんか?)

誰かが私を助けてください

編集>>

public class OurWebSiteContext : DbContext 
    { 
     public OurWebSiteContext(string connString) 
      : base(connString) 
     { 

     } 

     public DbSet<Article> Articles { get; set; } 
     public DbSet<Category> Categories { get; set; } 
     public DbSet<Comment> Comments { get; set; } 
    } 
+0

あなたが実際に' DbContext' 'からOurWebSiteContext'を導き出したのであるバージョン4.1で

DatabaseContext _context = new DatabaseContext(); _context.ObjectStateManager.ChangeObjectState(entity, System.Data.EntityState.Modified); 

ような何かを行うことができますクラスOurWebSiteContext:DbContext'? 'Entry'は' DbContext'のパブリックメソッドです。アプリケーションが 'DbContext'を理解している場合、' Entry'も知っているはずです。 – Slauma

+0

私の質問を編集したので、OurWebSiteContextの定義を見ることができます。 –

+1

"http://msdn.microsoft.com/en-us/data/gg685467"の記事を読むと、バージョン固有の問題であることが判明しました。なぜなら、この記事で言うことをした後、私のプログラムは問題なく実行されたからです。 –

答えて

41

が答えることは遅すぎるかもしれないが、それは他の人を助けることが、EF 4.0は、バージョンとして4.1DbContextを使用していますObjectContextクラスを使用していますこのクラスでは、Set<T>Entryのようなメソッドが定義されています。 `公共:バージョン4.0を使用すると、そのここ

_context.Entry(entity).State = System.Data.EntityState.Modified; 

のように行われ、有用なSO link

関連する問題