1

リポジトリパターンを使用してアプリケーションのデータアクセス層を構築し、ManagedODP.netプロバイダーを使用してOracleデータを処理しています。エンティティフレームワークをコードファーストでオラクルと連携させようとしているときに、いくつかの問題に直面しています。

public class Repository<TObject>
            where TObject : class
{        
protected DbSet<TObject> DbSet
        {
            get
            {
                return Context.Set<TObject>();
            }
        }

public virtual TObject Create(TObject TObject)
        {
            var newEntry = DbSet.Add(TObject);

             return newEntry;
        }

...
}

作成関数は、実際にはDBへのエントリを作成していません。ただし、get関数は正常に機能します。

この問題に関する提案..?または、エンティティフレームワークのコードファーストでODPをフォローするのが良いアプローチかどうかを誰かが提案できますか?

4

1 に答える 1

1

ODP.NET マネージド データ プロバイダーは、Entity Framework を使用したコード ファースト開発をサポートしていません。Oracle クライアント ディレクトリの下の odp.net/doc にある readme.txt から:

「7. ODP.NET 11.2.0.3 は、Code First も DbContext API もサポートしていません。」

モデル優先またはデータベース優先のアプローチを使用する必要があります。

于 2013-06-13T21:24:31.963 に答える