コードはVB.NETでVB.NET構文と文字列の拡張メソッド
Module Utils
<Runtime.CompilerServices.Extension()> _
Public Sub Print(ByVal message As String)
Console.WriteLine(message)
End Sub
End Module
Public Class Foo
Public Sub New()
Dim test = "cucu"
test.Print() ' no problem: custom string extension method '
"cucu".Print() ' syntax error '
End Sub
End Class
1)第一の問題は、私が「cucu」.MyExtensionMethod()と同様にtest.MyExtensionMethodを使用できるように好みます();
1' )
"No Result".Print() ' Print is an extension method '
" No Result ".Trim() ' Trim is a framework method '
よう 構文しかし、構文などの
myTextBox.Text = "No Result".Translate() ' Translate is an extension method '
myTextBox.Text = " No Result ".Trim() ' Trim is a framework method '
作品非常によく
それらの両方を動作しません。
文字列定数の動作が一貫していないようです。
2)コメント(添付写真)をご覧ください。 「カスタム」、「文字列」、「エラー」という言葉が強調表示されていますが、それらはコメントに含まれていますので、青ではなく緑でなければなりません。
これはなぜですか?どのような回避策ですか?
EDIT:Microsoft Connectの "バグ"(構文上の "ミス" ということよりない場合であっても)として宣言
...
EDIT 2:
としてはハンスアンパッサン、標準を述べ"cucu".Trim()
のような文字列メソッドも機能しません。
Um、回避策は 'test'のように変数に代入することです。 – BoltClock
@BoltClock))))これはなぜですか? )) – serhio
あなたはどうやってそれがすでにバグだと確信していますか? – BoltClock