C# 中的自定义字符串助手

Custom String Helper in C#

我创建了一个辅助方法,它接受一个字符串并将所有换行符替换为 HTML 换行符。我目前在需要静态调用的助手 class 中有该方法。

如何简单地将我的辅助方法添加到内置 C# 字符串中 class?

这就是我希望能够做到的:

m.MailingAddress = m.MailingAddress.ReplaceNewlines("<br />");

这是我目前正在做的事情:

m.MailingAddress = Utility.ObjectExtensions.ReplaceNewlines(m.MailingAddress,"<br />");

您使用扩展方法创建静态 class,如下所示:

public static class StringExtensions
{
    public static string ReplaceNewlines(this string text, string toReplace)
    {
       ...
    }
}

this 关键字将方法标识为扩展,在本例中为字符串 class.

像这样创建扩展方法(为方便起见,将您的助手放在方法主体中):

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

中阅读有关扩展方法的更多信息

您可以使用扩展方法: 扩展方法应在静态 class.

中声明
   public static class Helper
    {
       public static ReplaceNewLines(this string currentStr, string replaceWith)
       {
          return Utility.ObjectExtensions.ReplaceNewlines(currentStr, replaceWith);
       }
    }


单击 here 了解更多详细信息。