C#方法定义太复杂
本文关键字:复杂 定义 方法 | 更新日期: 2023-09-27 18:19:33
当我查看MVC库中EditorFor方法的文档时,我发现了这个方法定义:
public static MvcHtmlString EditorFor<TModel, TValue> {
this HtmlHelper<TModel> html,
Expression<Func<TModel, TValue>> expression,
Object additionalViewData
}
这对我来说很难理解,但我认为HTML助手会很有帮助,所以我想理解它,我也想弄清楚它的逻辑,这样我就可以在其他方法定义中使用它。如果你能帮忙,我将不胜感激。
编辑:这个方法定义的正确用法是什么?
这是一个扩展方法(这就是您看到this
和static
的原因)。它采用两种泛型类型(<TModel, TValue>
),您必须在调用方法时指定这两种类型,以便在整个过程中使用/引用它们(包括其他参数,例如HtmlHelper<TModel>
)。此方法将返回一个类型为MvcHtmlString
的对象。
这就是你能从签名中收集到的全部内容。它实际上做了什么和/或如何做,只能从它的内容中得知。
阅读:
扩展方法:
http://msdn.microsoft.com/en-GB/library/bb383977.aspx
Generics:
http://msdn.microsoft.com/en-us/library/ms379564(v=vs.80).aspx