C# 基础2

1,

public class User

{

    public int Id { get; set; }

    public string Name { get; set; }

    public int Age { get; set; }


像上面这样的空的get/set属性的话,它会自动为你在类中生成一个私有成员变量,对这个变量实现一个公开的gettersetter


2, Foo foo3 = new Foo{Age=18,Name="alivin"}; 这种初始化对象,首先你得有一个无参构造函数


3,

C#的Lambda 表达式都使用 Lambda 运算符 =>,该运算符读为“goes to”。语法如下:
形参列表=>函数体
函数体多于一条语句的可用大括号括起。


4,Linq中的连接,join 和 groupjoin的语法


官网的第一个例子

DataSet ds = new DataSet();
ds.Locale = CultureInfo.InvariantCulture;
FillDataSet(ds);

DataTable orders = ds.Tables["SalesOrderHeader"];
DataTable details = ds.Tables["SalesOrderDetail"];

var query =
    from order in orders.AsEnumerable()
    join detail in details.AsEnumerable()
    on order.Field<int>("SalesOrderID") equals
        detail.Field<int>("SalesOrderID")
    where order.Field<bool>("OnlineOrderFlag") == true
    && order.Field<DateTime>("OrderDate").Month == 8
    select new
    {
        SalesOrderID =
            order.Field<int>("SalesOrderID"),
        SalesOrderDetailID =
            detail.Field<int>("SalesOrderDetailID"),
        OrderDate =
            order.Field<DateTime>("OrderDate"),
        ProductID =
            detail.Field<int>("ProductID")
    };


foreach (var order in query)
{
    Console.WriteLine("{0}\t{1}\t{2:d}\t{3}",
        order.SalesOrderID,
        order.SalesOrderDetailID,
        order.OrderDate,
        order.ProductID);
}


5, Linq的一个例子
var categories =
    from p in db.Products
    group p by p.CategoryID into g
    select new {
        g.Key,
        MostExpensiveProducts =
            from p2 in g
            where p2.UnitPrice == g.Max(p3 => p3.UnitPrice)
            select p2
    };

6,对于linq查询的延迟和不延迟


Where

过滤;延迟

Select

选择;延迟

Distinct

查询不重复的结果集;延迟

Count

返回集合中的元素个数,返回INT类型;不延迟

LongCount

返回集合中的元素个数,返回LONG类型;不延迟

Sum

返回集合中数值类型元素之和,集合应为INT类型集合;不延迟

Min

返回集合中元素的最小值;不延迟

Max

返回集合中元素的最大值;不延迟

Average

返回集合中的数值类型元素的平均值。集合应为数字类型集合,其返回值类型为double;不延迟

Aggregate

根据输入的表达式获取聚合值;不延迟


linq 延迟请移步资料:http://www.cnblogs.com/happygx/archive/2012/04/16/2451668.html



可选的。。{} ,大括号表示 可选的。。。


http://www.asp.net/web-api/overview/extensibility/using-the-web-api-dependency-resolver 这篇文章有点没有看懂,好好研究一下




posted on 2015-01-20 11:08  狂奔的冬瓜  阅读(97)  评论(0编辑  收藏  举报