发布于2026-07-08 阅读(0)
扫一扫,手机访问

namespace MyLib
{
public static class StringExtensions // 必须 public + static + 非嵌套
{
public static int WordCount(this string s)
{
return string.IsNullOrEmpty(s) ? 0 : s.Split(' ', '.', '?').Length;
}
}
}
调用时另一个容易踩的坑:就算你已经引用了扩展方法所在的类库,没写 `using MyLib;`,IntelliSense 里根本看不到这个方法,编译也会报 `CS1061`。关键点是 `using` 命名空间,而不是 `using` 类名。另外,如果多个命名空间里定义了同名扩展方法,编译器会抱怨歧义,这时候只能老老实实走静态方法调用。.NET SDK 项目默认不会自动导入自定义命名空间,别指望“全局 using”能帮你省事。
namespace MyLib
{
public static class StringExtensions
{
extension(string s)
{
public int WordCount() => s.Split(' ').Length;
public bool IsLong() => s.Length > 100;
}
}
}
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8