Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 请澄清MVC Razor语法中“=>”的用法?_C#_Lambda - Fatal编程技术网

C# 请澄清MVC Razor语法中“=>”的用法?

C# 请澄清MVC Razor语法中“=>”的用法?,c#,lambda,C#,Lambda,请澄清=>在MVC Razor中的用法。例如,在以下语句的上下文中: @Html.LabelFor(m => m.AnswerText) 简单地说=>意味着=>前面的单词是一个占位符变量 更多信息和在这种情况下以及任何其他情况下,这都是一个问题 您需要使用lambda表达式,不能仅使用Model.AnswerText调用该方法。如果您使用Model.AnswerText,它将仅作为方法的常规参数。使用lambda表达式作为参数时,该方法可以查看模型元数据,以获取html元素的名称和值以及

请澄清=>在MVC Razor中的用法。例如,在以下语句的上下文中:

@Html.LabelFor(m => m.AnswerText)
简单地说=>意味着=>前面的单词是一个占位符变量


更多信息和

在这种情况下以及任何其他情况下,这都是一个问题


您需要使用lambda表达式,不能仅使用Model.AnswerText调用该方法。如果您使用Model.AnswerText,它将仅作为方法的常规参数。使用lambda表达式作为参数时,该方法可以查看模型元数据,以获取html元素的名称和值以及其他内容。

=>是lambda表达式。基本上,它是选择模型中某个参数值的简写。 例如,如果你有

@model YourDomain.Foo.Models.Bar
在你的酒吧模型中有一个名为UserName的字符串 然后使用@Html.TextBoxForm=>m.UserName 将在模型中显示用户名的值。约翰·史密斯 但是,当使用LabelFor时,它会显示模型参数的名称,而不是显示模型参数的值,因此在您使用的示例中

@Html.LabelFor(m => m.AnswerText)

结果显示将是AnswerText

它是一个lambda运算符,就像C中的其他任何地方一样。在本例中,LabelFor是一个扩展方法,带有参数表达式,右侧返回模型属性值。

它并不意味着等于或大于,它指出m指的是模型,特定于AnswerText属性。感谢链接。第二个环节特别说明了这一点