我正在重构一个Cake的构建脚本,并决定引入一个类来保存一些构建设置,这些设置在很多地方都会使用到,或者存在于全局作用域中。
其中一些设置来自于参数,并使用
我想创建如下的内容:
为此,我需要获取当前ICakeContext的实例。我认为这样做的原因是,所有在cake脚本中定义的方法都成为自定义的ICakeContext的方法,该ICakeContext可能从CakeContext继承并因此可以调用其(扩展)方法,但是一旦定义了一个类,它就变成了一个嵌套类,不再具有像Argument<T>(name, defaultValue)这样的好帮手。
我希望我可以使用
但是关键字
所以问题是:如何获取对当前
其中一些设置来自于参数,并使用
Argument<T>(string name, string defaultValue)
语法进行设置。我想创建如下的内容:
var context = BuildContext.FromArguments();
为此,我需要获取当前ICakeContext的实例。我认为这样做的原因是,所有在cake脚本中定义的方法都成为自定义的ICakeContext的方法,该ICakeContext可能从CakeContext继承并因此可以调用其(扩展)方法,但是一旦定义了一个类,它就变成了一个嵌套类,不再具有像Argument<T>(name, defaultValue)这样的好帮手。
我希望我可以使用
ICakeContext.Current
或只需传递this
,如BuildContext.FromArguments(this)
或类似的东西。但是关键字
this
在Cake脚本的那个层级不被允许(不确定为什么,是顶层是静态方法吗?)所以问题是:如何获取对当前
ICakeContext
的引用?