C# 中方法的可见性
Visibility of a method in C#
在 C# 6.0 中有一个新功能 using static
允许使用这样的代码
using static Query.QueryBuilder;
static void BuildQuery()
{
var newQuery = Where(Eq("Value1","Value2"))
}
构建查询的方法是 class QueryBuilder
中的静态方法
namespace Query
{
public static QueryBuilder
{
public static string Where(Object obj);
public static string Eq(Object obj);
}
}
这允许放弃指定静态 class 名称 QueryBuilder
以从此 class.
调用静态方法
是否可以在 C# 3.0 中做类似的事情?有一种方法可以使用别名来实现,但仍然需要使用某种缩短的前缀来调用方法。
不,静态使用对于 C# 6 来说是全新的,并且无法获得相同的行为(不需要 class 名称)。
正如您所说,有一些接近的方法,但在早期版本中没有完全相同的方法。
在 C# 6.0 中有一个新功能 using static
允许使用这样的代码
using static Query.QueryBuilder;
static void BuildQuery()
{
var newQuery = Where(Eq("Value1","Value2"))
}
构建查询的方法是 class QueryBuilder
namespace Query
{
public static QueryBuilder
{
public static string Where(Object obj);
public static string Eq(Object obj);
}
}
这允许放弃指定静态 class 名称 QueryBuilder
以从此 class.
是否可以在 C# 3.0 中做类似的事情?有一种方法可以使用别名来实现,但仍然需要使用某种缩短的前缀来调用方法。
不,静态使用对于 C# 6 来说是全新的,并且无法获得相同的行为(不需要 class 名称)。
正如您所说,有一些接近的方法,但在早期版本中没有完全相同的方法。