现在的位置: 首页 > 综合 > 正文

linq 方法查找

2012年06月29日 ⁄ 综合 ⁄ 共 2335字 ⁄ 字号 评论关闭

·Distinct - 过滤集合中的相同项;延迟
    ·Union - 连接不同集合,自动过滤相同项;延迟
    ·Concat - 连接不同集合,不会自动过滤相同项;延迟
    ·Intersect - 获取不同集合的相同项(交集);延迟
    ·Except - 从某集合中删除其与另一个集合中相同的项;延迟
    ·Skip - 跳过集合的前n个元素;延迟
    ·Take - 获取集合的前n个元素;延迟
    ·SkipWhile - 直到某一条件成立就停止跳过;延迟
    ·TakeWhile - 直到某一条件成立就停止获取;延迟
    ·Single - 根据表达式返回集合中的某一元素;不延迟
    ·SingleOrDefault - 根据表达式返回集合中的某一元素(如果没有则返回默认值);不延迟
    ·Reverse - 对集合反向排序;延迟
    ·SelectMany - Select选择(一对多);延迟

 

   ·First - 返回集合中的第一个元素;不延迟
    ·FirstOrDefault - 返回集合中的第一个元素(如果没有则返回默认值);不延迟
    ·Last - 返回集合中的最后一个元素;不延迟
    ·LastOrDefault - 返回集合中的最后一个元素(如果没有则返回默认值)
    ·ElementAt - 返回集合中指定索引的元素;不延迟
    ·ElementAtOrDefault - 返回集合中指定索引的元素(如果没有则返回默认值);不延迟
    ·Contains - 判断集合中是否包含有某一元素;不延迟
    ·Any - 判断集合中是否有元素满足某一条件;不延迟
    ·All - 判断集合中是否所有元素都满足某一条件;不延迟
    ·Count - 返回集合中的元素个数,返回int;不延迟
    ·LongCount - 返回集合中的元素个数,返回long;不延迟
    ·Sum - 集合应为数字类型集合,求其和;不延迟
    ·Min - 返回集合的最小值;不延迟
    ·Max - 返回集合的最大值;不延迟
    ·Average - 集合应为数字类型集合,求其平均值;不延迟
    ·Aggregate - 根据输入的表达式获取一个聚合值;不延迟
    ·Cast - 将集合转换为强类型集合;延迟
    ·DefaultIfEmpty - 查询结果为空则返回默认值;延迟
    ·SequenceEqual - 判断两个集合是否相同;不延迟
    ·OfType - 过滤集合中的指定类型;延迟
    ·ToArray - 将集合转换为数组;不延迟
    ·ToList - 将集合转换为List<T>集合;不延迟
    ·ToDictionary - 将集合转换为<K, V>集合;不延迟

 

 

/// <summary>
    
/// 事务处理(用DataContext.Connection.BeginTransaction()的方式做事务处理)
    
/// </summary>

    private void TransactionDemo2()
    
{
        
int? categoryId = null;

        NorthwindDataContext ctx 
= new NorthwindDataContext();

        
if (ctx.Connection.State != ConnectionState.Open)
        
{
            ctx.Connection.Open();
        }


        System.Data.Common.DbTransaction tran 
= ctx.Connection.BeginTransaction();
        ctx.Transaction 
= tran;

        
try
        
{
            ctx.AddCategory(
"test""test"ref categoryId);
            ctx.DeleteCategory(
1);

            tran.Commit();
        }

        
catch
        
{
            tran.Rollback();
        }

    }


    
/// <summary>
    
/// 事务处理(用System.Transactions.TransactionScope做事务处理),这种方法最好用在SQL2005中
    
/// </summary>

    private void TransactionDemo3()
    
{
        
int? categoryId = null;

        
using (TransactionScope tc = new TransactionScope())
        
{
            
try
            
{
                NorthwindDataContext ctx 
= new NorthwindDataContext();
                
                ctx.AddCategory(
"test""test"ref categoryId);
                ctx.DeleteCategory(
1);

                tc.Complete();
            }

            
catch
            
{ }
        }

    }

抱歉!评论已关闭.