我正在使用 Visual Studio 项目类型 - 独立代码分析工具。我正在使用以下代码,但 ToString() 显示出意外结果。
static void Main(string[] args)
{
var classDoc = @"public class SomeClass{
private SomeOtherClass someOtherClass;
}";
SyntaxTree classTree=SyntaxFactory.ParseSyntaxTree(classDoc);
var classDecl = (ClassDeclarationSyntax)classTree.GetRoot().DescendantNodes()
.First(d => d is ClassDeclarationSyntax);
var field = classDecl.Members.OfType<FieldDeclarationSyntax>().First();
var fieldType = field.Declaration.Type;
var newFieldType = SyntaxFactory.ParseName("System.Windows.Forms.UserControl");
var newField=field.ReplaceNode(fieldType, newFieldType);
var newFieldStr = newField.ToString();
}
的newFieldStr
值为
private System.Windows.Forms.UserControlsomeOtherClass;
请告知我如何获得预期的结果。