如何在C#.Net中製作原型方法?
在JavaScript中,我可以執行以下操作來為字串物件建立一個修剪方法:
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g,"");
}
如何在C#.Net中執行此操作?
如何在C#.Net中製作原型方法?
在JavaScript中,我可以執行以下操作來為字串物件建立一個修剪方法:
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g,"");
}
如何在C#.Net中執行此操作?
除了更改該類的原始碼之外,不能動態地向.NET中現有的物件或類新增方法。
然而,在 C#3.0 中,您可以使用擴充套件方法,這些方法看起來像新方法,但是是是編譯時間的魔法。
為程式碼執行此操作:
public static class StringExtensions
{
public static String trim(this String s)
{
return s.Trim();
}
}
使用它:
String s = " Test ";
s = s.trim();
這看起來像一個新方法,但將以與此程式碼完全相同的方式編譯:
String s = " Test ";
s = StringExtensions.trim(s);
你到底想要做什麼?也許有更好的方法來做你想要的事情?