【发布时间】:2011-10-25 17:24:57
【问题描述】:
我在 .NET 中有一个使用 Entity Framework 4 的应用程序。我使用 DB2/400 作为我的应用程序后端。我能够进行查询并从数据库中成功读取。 但是,在任何其他操作(例如插入/更新/删除)中,我都会遇到错误。 我在http://www.ibm.com/developerworks/forums/thread.jspa?messageID=14222306 找到了答案,它指出我的 DB2 客户端驱动程序没有为事务配置。 但是,在 /sqllib/cfg 文件夹下没有 db2cli.cfg 文件(或我计算机上的其他任何地方) 此外,我可以从绿屏/java 应用程序修改表。 这是我的一种方法:
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();
}
我的问题是:
- 我是否应该去其他版本/安装 DB2 express-C 安装 .NET 驱动程序/提供程序。
- 我可以使用任何其他方法 实体框架内的数据持久性(例如在 jpa/hibernate 我们可以使用显式事务)。
如果您有任何想法(我可以尝试,请在此处提及)
【问题讨论】:
标签: .net entity-framework ibm-midrange data-access db2-connect