Я хотел бы сделать статический класс с беглым интерфейсом, но я получаю сообщение об ошибке:Возвращения «это» в статическом методе
'this' is not valid in a static property, method ...
Вот мой код:
public static MyClass
{
private static StringBuilder builder;
private static StringBuilder RouteBuilder
{
get
{
if (builder == null)
builder = new StringBuilder();
return builder;
}
}
public static MyClass Root()
{
RouteBuilder.Append("/");
return this;
}
public static MyClass And()
{
RouteBuilder.Append("and");
return this;
}
public static MyClass Something()
{
RouteBuilder.Append("something");
return this;
}
}
Это позволяет мне делать MyClass.Root().And().Something();
Есть ли способ сделать это или обходным путем?
Что бы вы хотели, чтобы «это» было в вашем статическом методе? – jalf
Я написал [сообщение в блоге] (http://mattdavey.me/2012/03/08/practical-applications-of-the-adaptive-interface-pattern-the-fluent-builder-context/) о свободных интерфейсах компоновщика недавно, что могло бы помочь – MattDavey