select、验证

1)投射(select)的含义:在查询中创建新对象 

var result=_db.mycontext.where(a=>a.id==id).select(new {a.id,a.name,a.createtime})

foreach(var c in result)

{

        Console.Writeline(result.);

}

中为什么打印出来的结果形如

{id=001,name="benjamin",createtime="20121027"}

{id=002,name="John",createtime="20121011"}

{id=003,name="Chris",createtime="20121018"}

?甚至都不需要重写ToString()方法?

原因是编译器面对匿名对象时已经提供了默认的执行代码,以类似于对象初始化的方式输出属性的名称和值。

2)用FirstOrDefault()--可以简化where+select筛选

3)UpdateModel(model),TryUpdateModel(model)方法可以将传递过来的数据(form,querystring等)自动更新到匹配到属性相同的model里。

在new了一个model时,可以这样用。

4)如何使用ModelState验证:

1、给表单的相关属性添加上特性如:[Required]

2、在出现错误信息的位置加上

@Html.ValidationMessageFor(model => model.Name)

3、再在服务器端用ModelState.IsValid来验证

原文地址:https://www.cnblogs.com/Benjamin/p/2745190.html