当前位置: 代码迷 >> ASP.NET >> mvc中的lamdba表达式,该怎么解决
  详细解决方案

mvc中的lamdba表达式,该怎么解决

热度:6873   发布时间:2013-02-25 00:00:00.0
mvc中的lamdba表达式
现在在学mvc看到Html.TextBoxFor(model => model.Title)这个lamdba表达式不是很理解!程序是怎么知道model是什么的

------解决方案--------------------------------------------------------
model是强类型视图定义的(在页面最上面有定义),并且使用Controller传入的。

model => model.Title

这是一个委托,由TextBoxFor函数调用,它给你一个Model参数,你返回Model中用于产生TextBox的字段
------解决方案--------------------------------------------------------
TakeWhile内部实现如下:(部分实现为了让你理解,使用了简化和变形)

C# code
List<int> TakeWhile(List<int> data, Func<int, int, bool> f){    List<int> result = new List<int>();    int index = 0;    bool isTake = false;    foreach (int i in data)    {        if (!isTake && f(i, index)) isTake = true;        if (isTake) result.Add(i);    }    return result;}
  相关解决方案