C# 有人能解释一下´;这段代码中发生了什么?
我正在使用ASP.NETMVC,并阅读了一些代码,下面的语法对我来说是新的。有人能给我解释一下它是怎么工作的吗C# 有人能解释一下´;这段代码中发生了什么?,c#,asp.net-mvc,C#,Asp.net Mvc,我正在使用ASP.NETMVC,并阅读了一些代码,下面的语法对我来说是新的。有人能给我解释一下它是怎么工作的吗 ViewDataInfo vdi = viewData.GetViewDataInfo(expression); Func<object> modelAccessor = null; modelAccessor = () => vdi.Value; ViewDataInfo vdi=viewData.GetViewDataInfo(表达式); Func model
ViewDataInfo vdi = viewData.GetViewDataInfo(expression);
Func<object> modelAccessor = null;
modelAccessor = () => vdi.Value;
ViewDataInfo vdi=viewData.GetViewDataInfo(表达式);
Func modelAccessor=null;
modelacessor=()=>vdi.Value;
此行将ViewDataInfo
设置为vdi
变量:
ViewDataInfo vdi = viewData.GetViewDataInfo(expression);
Func<object> modelAccessor = null;
此行初始化空变量:
ViewDataInfo vdi = viewData.GetViewDataInfo(expression);
Func<object> modelAccessor = null;
其中,下面的代码表示不带参数并返回对象
(如Func
声明的泛型类型中所指定的):
获取使用参数表达式调用的GetViewDataInfo
方法的结果
Func<object> modelAccessor = null;
modelAccessor = () => vdi.Value;
Func modelacessor=null;
modelacessor=()=>vdi.Value;
在lambda函数视图中创建和初始化委托(函数指针)。在以后的代码中调用modelacessor()
,它将返回vdi.Value
()
-这意味着函数不检索任何参数。
Func
-函数将返回一个对象
vdi.Value
-是{return vdi.Value;}
关于lambda函数。您询问的是哪部分?
Func<object> modelAccessor = null;
modelAccessor = () => vdi.Value;