由于也是初试Linq,有好多就搞不明白。如:保存Model后并获取该条记录的ID,就把我困扰了半天,再一个就是用事务。Linq自己会默认事务,但是我是用两个提交结果,这样就它默认的就起不到我想要的所有保存都用事务了。经过一翻的查找,搞明白了,写出来,让一些初学者看。
1。获取相应的记录ID,实际上,了解后是非常的简单。真叫会者不难,难者不会。^_^,不知道之前,就把我搞闷了?
MarketMDataContext db = new MarketMDataContext();
db.M_TWHBB.InsertOnSubmit(twhbb);
db.SubmitChanges();
获取就用:int id=twhbb.ID 其中twhbb是实体类。就这么简单。。呵呵
2。事务
MarketMDataContext db = new MarketMDataContext();
if (db.Connection.State != ConnectionState.Open)
{
db.Connection.Open();
}
System.Data.Common.DbTransaction tran = db.Connection.BeginTransaction();
db.Transaction = tran; //初始化本地事务
try
{
//执行你的方法
tran.Commit();
}
catcth()
{
tran.Rollback();
}
OK,上面就是用了Linq方法的一些小事例。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/nihongyuan/archive/2008/05/27/2486116.aspx
3、Linq插入表1后获取新ID再插入表2中
说明:两表要建立主外键关系,且表1的ID列为自动增加(Test1为表1名称,Test2为表2 名称)
Test1 mytest1 = new Test1();
mytest1.Tname = TextBox1.Text.Trim();
Test2 mytest2 = new Test2();
mytest2.T2name = TextBox2.Text.Trim();
mytest1.Test2.Add(mytest2);
ctx.Test1.InsertOnSubmit(mytest1);
ctx.SubmitChanges();