在代码段中获取命名空间
这里的Microsoft链接列出了我们可以使用的三种方法。
但是我们如何获得当前的命名空间? 我看到有一个类似的问题,但答案是使用宏,这不解决这个具体的问题。
NameSpace()做这样的事情:
. . namespace NameSpace()
发现它可以完成并且它将ExpansionProvider和ExpansionFunction类带入画面
对于上面的代码片段,我不得不这样做:
internal class NameSpaceExpansionFunction : ExpansionFunction { public NameSpaceExpansionFunction(ExpansionProvider provider) : base(provider) { } public override string GetCurrentValue() { //get namespace return namespace; } }
并且LanguageService告诉代码片段文件在哪里查找函数的定义:
public class MyLanguageService : LanguageService { public override ExpansionFunction CreateExpansionFunction(ExpansionProvider provider, string functionName) { ExpansionFunction function = null; if (String.Compare(functionName, "NameSpace", true) == 0) { function = new NameSpaceExpansionFunction(provider); } return function; } }
事实certificate这更像是一个教程问题,因此我提供了上面的链接。 应该会有所帮助。 为我工作:)