我创建了一个辅助方法,它接受一个字符串并用HTML换行符替换所有换行符。我目前在辅助类中有方法需要静态调用。
如何简单地将我的帮助方法添加到内置C#字符串类?
所以这就是我希望能够做到的:
m.MailingAddress = m.MailingAddress.ReplaceNewlines("<br />");
这就是我目前正在做的事情:
m.MailingAddress = Utility.ObjectExtensions.ReplaceNewlines(m.MailingAddress,"<br />");
答案 0 :(得分:5)
使用扩展方法创建一个静态类,如下所示:
public static class StringExtensions
{
public static string ReplaceNewlines(this string text, string toReplace)
{
...
}
}
this
关键字将方法标识为扩展名,在本例中为字符串类。
答案 1 :(得分:1)
您可以使用扩展方法: 扩展方法应该在静态类中声明。
public static class Helper
{
public static ReplaceNewLines(this string currentStr, string replaceWith)
{
return Utility.ObjectExtensions.ReplaceNewlines(currentStr, replaceWith);
}
}
点击here了解详情。
答案 2 :(得分:0)
创建这样的扩展方法(为方便起见,将帮助器放到方法体上):
public static class StringHelpers
{
public static ReplaceNewLinesExt(this string str, string replacement)
{
return Utility.ObjectExtensions.ReplaceNewlines(str, replacement);
}
}
然后在添加助手所在的命名空间后,可以使用类似的扩展方法:
...
var modified = someString.ReplaceNewLinesExt("<br />");
...
您可以在MSDN article
中详细了解扩展方法