LINQ,语言集成查询(Language INtegrated Query)是一组用于c#和Visual Basic语言的扩展。它允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据。

  工具:LinqPad(http://www.linqpad.net/)分析工具

 一、使用方法

1、返回匿名类型

   var sql = from c in tb select new {c.EUserName,c.AreaName}
   var sql = from c in tb select new {EUserName:c.EUserName,AreaDepName:c.AreaName +c.DeaprtName}; 

2、事务处理,见如下代码:

if (_dataContext.Connection != null) _dataContext.Connection.Open();
DbTransaction tran = _dataContext.Connection.BeginTransaction();
_dataContext.Transaction = tran;

try {
    //p1插入成功
    Person p1 = new Person() { id = 100, name = "hans" };
    _dataContext.GetTable<Person>().InsertOnSubmit(p1);
    _dataContext.SubmitChanges();

    //p2.id=101已存在,插入不成功,通过事务处理,会将p1插入操作回滚,插入失效
    Person p2 = new Person() { id = 101, name = "hdu" };
    _dataContext.GetTable<Person>().InsertOnSubmit(p2);
    _dataContext.SubmitChanges();

    tran.Commit();
} catch (Exception ex) {
    tran.Rollback();
}
View Code

相关文章: