2
里面一个MVC控制器I试图创建类似于字段:为什么成员字段不能有字段初始值设定项调用成员函数?
Func<MyModel, ViewResult> ModelResult=(model) => View("myview.cshtml", model);
这导致编译错误
一个对象引用是所必需的非静态字段,方法或 属性 'System.Web.Mvc.Controller.View(字符串,对象)'
此代码工作正常为方法
private ViewResult ModelResult(MyModel model)
{
return View("myview.cshtml", model);
}
如果该字段由构造
public MyController()
{
ModelResult=(model) => View("myview.cshtml", model);
}
为什么字段初始当作一个静态初始化的背景下它
也能正常工作?
很好的问题,这很奇怪为什么lambda调用实例方法不允许在字段初始化。我猜你可以找到帮助[这里](http://stackoverflow.com/a/17030381/1283124) – 2014-10-17 21:01:10
[为什么C#lamba表达式不能使用实例属性和字段?](http:// stackoverflow。 COM /问题/ 17030351 /为什么-C-尖锐兰巴表达-斜面使用实例的属性和字段) – 2014-10-17 21:05:24