目前,我正在与NRefactory合作一个项目。我们正在从.cs文件中过滤出像“类”和“接口”这样的类型声明。我们想把这些类型声明放到一个自定义的命名空间中,但由于某些原因,它不起作用。有人能帮我解决这个问题吗?
我已经尝试了以下代码:
typeDeclaration.Parent.InsertChildBefore(typeDeclaration, ns, new Role<NamespaceDeclaration>("customNamespace"));发布于 2014-07-11 16:27:44
我从未尝试在TypeDeclaration之前插入名称空间节点。相反,我首先添加了命名空间,然后添加了TypeDeclaration:
public static void AddChildTypeDeclaration(
this AstNode tree,
TypeDeclaration newClass,
NamespaceDeclaration parentNamespace = null)
{
if (null != parentNamespace)
{
var newNamespaceNode = new NamespaceDeclaration(
parentNamespace.Name);
newNamespaceNode.AddMember(newClass);
tree.AddChild(newNamespaceNode, SyntaxTree.MemberRole);
}
else
{
tree.AddChild(newClass, Roles.TypeMemberRole);
}
}https://stackoverflow.com/questions/19361449
复制相似问题