当前位置:  开发笔记 > 编程语言 > 正文

可以在.net中扩展String类

如何解决《可以在.net中扩展String类》经验,为你挑选了1个好方法。

如何覆盖或扩展.net主类.例如

public class String
{
    public boolean contains(string str,boolean IgnoreCase){...}
    public string replace(string str,string str2,boolean IgnoreCase){...}
}

string aa="this is a Sample";
if(aa.contains("sample",false))
{...}

可能吗?



1> JaredPar..:

String类是密封的,因此您无法从中继承.扩展方法是您最好的选择.它们与实例方法具有相同的感觉,而没有继承成本.

public static class Extensions {
  public static bool contains(this string source, bool ignoreCase) {... }
}

void Example {
  string str = "aoeeuAOEU";
  if ( str.contains("a", true) ) { ... }
}

您需要使用VS 2008才能使用扩展方法.


@casperOne - 把它转回给你,"或者单声道2.0";-p
@casperOne,对.我经常说VS 2008,因为它更为人所知.更有趣的是,如果您提供自己的Extension属性,则可以使用扩展方法编译2.0应用程序.http://blogs.msdn.com/jaredpar/archive/2007/11/16/extension-methods-without-3-5-framework.aspx
推荐阅读
罗文彬2502852027
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有