2011-08-12 13 views
0

.NETでEntity Framework 4を使用するアプリケーションを使用しています。アプリケーションのバックエンドとしてDB2/400を使用しています。私はクエリを作成し、データベースから正常に読み取ることができます。 他の操作(挿入/更新/削除など)では、エラーが発生しています。 http://www.ibm.com/developerworks/forums/thread.jspa?messageID=14222306に私のDB2クライアントドライバがトランザクション用に設定されていないと答えた回答が見つかりました。 ただし、/ sqllib/cfgフォルダーの下にはdb2cli.cfgファイルはありません(またはコンピューターのどこにでもあります) また、緑色の画面/ Javaアプリケーションから表を変更できます。 は、ここに私の方法の一つである:.NETからi-Series DB2のデータを変更できません

using (var context = new Data.SchemaEntity()) { 
      string sql = "select * from schemaname.tablename where FLD='V2'"; 
      var rows = context.ExecuteStoreQuery<CUST>(sql, null); 
      CUST c = rows.First(); // This is giving me the correct data 

      if(c.EntityState == System.Data.EntityState.Detached) 
       context.CUSTS.Attach(c); 
      context.CUSTS.DeleteObject(c); 

      context.SaveChanges(); 

     } 

私の質問は以下のとおりです。

  • 私は は、.NETドライバ/プロバイダをインストールすることをDB2 Expressの-Cの別のバージョン/インストールのために行く必要があります。
  • エンティティフレームワーク内のデータ永続性について他の方法を使用することはできますか(たとえば、 では明示的なトランザクションを使用できます)。あなたが任意のアイデアを持っていれば

私は私で、エンティティフレームワークを使用して多くの幸運を持っていなかった

答えて

0

(私はおそらく試すことができ、ここで言及ください)。通常、IBM i AccessのADO.NETドライバを使用しました。申し訳ありませんがあなたのために良い答えがありません。私は、私のEFドライバーのために何ヶ月も探しています。

+0

まだ検索していますか?私はまた、iSeriesにバインドされ、単純な選択のために "fat" ado.netメソッドを構築しています。 – e4rthdog

+0

うん、まだ検索しています。あなたが購入することができる1つのパッケージは、EFと一緒に_might_と同じように見えますが、私は100%何らかの方法で見たことがありません。 –

+1

私は私のソリューションを見つけました。私はDAPPER micro-ORMを使用しています。チェックアウトしてください.EFプロバイダが必要な場合は、DBConnectと一緒に行く必要があります。 – e4rthdog

関連する問題