ASP.net MVC HtmlHelper в VB.net - PullRequest
       2

ASP.net MVC HtmlHelper в VB.net

1 голос
/ 17 сентября 2009

глупый вопрос здесь. Я пытаюсь создать вспомогательный метод, похожий на список переключателей в проекте фьючерсов MVC (в качестве инструмента обучения).

Я пытаюсь преобразовать код C #:

 public static string[] RadioButtonList(this HtmlHelper htmlHelper, string name, IDictionary<string, object> htmlAttributes) {

к сигнатуре метода в VB.net, но я не уверен, как написать первый параметр в VB.net, или как вы бы это назвали, чтобы я мог его найти?

Ответы [ 4 ]

2 голосов
/ 17 сентября 2009

Я считаю, что это будет работать, если вы помните, чтобы пометить его как метод расширения, вы можете посмотреть Методы расширения на MSDN.com . У них есть примеры того, как писать методы расширения в VB.net.

<System.Runtime.CompilerServices.Extension> _
Public Shared Function RadioButtonList(ByVal htmlHelper As HtmlHelper, ByVal name As String, ByVal htmlAttributes As IDictionary(Of String, Object)) As String()
    
End Function
2 голосов
/ 17 сентября 2009

Я тоже не Но это сигнатура метода расширения. Вот документы MSDN о том, как сделать это в VB.

1 голос
/ 25 февраля 2012

Методы расширения в VB могут быть объявлены только из модуля, а не класса, поэтому полное определение скелета будет выглядеть примерно так ...

Imports System.Web.Mvc

Public Module MyModule

    <System.Runtime.CompilerServices.Extension> _
    Public Function MyHelper (ByVal helper As HtmlHelper, MyParameter as String) As String

    End Function

End Module
1 голос
/ 17 сентября 2009

Они называются Методы расширения и объявляются в VB.Net следующим образом:

<System.Runtime.CompilerServices.Extension()> _
Public Sub RadioButtonList(ByVal name As String, ...)
// There's no "this" parameter at all...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...