Это функция C # 3.0, которая называется «Лямбда-выражение» .
Вы можете проверить эти хорошие статьи, чтобы узнать, что это такое (кстати, это удивительно полезно).
http://blogs.msdn.com/b/ericwhite/archive/2006/10/03/lambda-expressions.aspx
http://blah.winsmarts.com/2006/05/19/demystifying-c-30--part-4-lambda-expressions.aspx
Что касается 2-й части вашего вопроса, если вы заметили, что все методы, описанные в @Html
, являются методами, связанными с моделью, это означает, что все они ожидают работы с вашей пройденной моделью.
И если вы проверите первую строку в представлении входа в систему, вы найдете эту строку:
@model YOUR_APP_NAME.Models.LogOnModel
Что определяет, что тип модели этого представления имеет тип logonModel. (Который можно найти в вашей папке Models.)
Таким образом, странный m
представляет переданную модель Logon, и поэтому мы можем легко получить доступ к свойствам переданной модели, например, набрав m.UserName