C# 将程序集属性插入AssemblyInfo.cs
我试图弄清楚如何使用rosyln将程序集属性插入到C# 将程序集属性插入AssemblyInfo.cs,c#,roslyn,C#,Roslyn,我试图弄清楚如何使用rosyln将程序集属性插入到AssemblyInfo.cs中 我的属性如下所示: [assembly: Foo(@"\\somepath\tosomething)"] var syntaxRoot = tree.GetRoot(); var attr = syntaxRoot.DescendantNodes().OfType<AttributeSyntax>(); var attrNames = attr.Select(a => a.Name); v
AssemblyInfo.cs
中
我的属性如下所示:
[assembly: Foo(@"\\somepath\tosomething)"]
var syntaxRoot = tree.GetRoot();
var attr = syntaxRoot.DescendantNodes().OfType<AttributeSyntax>();
var attrNames = attr.Select(a => a.Name);
var deployments = attr.Where(a => a.Name.ToString() == "Foo")
.Select(d => d.DescendantTokens()
.FirstOrDefault(t => t.Kind() == SyntaxKind.StringLiteralToken).ValueText);
...
[assembly: AssemblyFileVersion("1.0.0.0")]
[DeploymentLocation]
我可以这样读:
[assembly: Foo(@"\\somepath\tosomething)"]
var syntaxRoot = tree.GetRoot();
var attr = syntaxRoot.DescendantNodes().OfType<AttributeSyntax>();
var attrNames = attr.Select(a => a.Name);
var deployments = attr.Where(a => a.Name.ToString() == "Foo")
.Select(d => d.DescendantTokens()
.FirstOrDefault(t => t.Kind() == SyntaxKind.StringLiteralToken).ValueText);
...
[assembly: AssemblyFileVersion("1.0.0.0")]
[DeploymentLocation]
因此,它添加了我的属性,但它没有assembly:
前缀,我不知道如何在其中获取字符串文字参数
我知道我可以(也可能应该)加载文件并使用简单的文本编写器插入字符串,但这是为了理解Roslyn应该如何工作。将代码粘贴到显示中