我正在使用Rosyln將AssemblyInfo.cs
作爲我正在製作的工具的一部分進行操作,並且我無法找出從文件中刪除此行的正確方法:從AssemblyInfo.cs中刪除程序集:部分
[assembly: DeploymentLocation("\\\\someserver\\folder")]
我也能有這樣的:
[assembly: DeploymentLocation("\\\\someserver\\folder"), DeploymentLocation("\\\\someotherserver\\folder")]
我想要做的就是找到那些線,將其刪除,並重新創建它們。重新創建它們很好,但刪除它們是問題所在。
我能找到那些DeploymentLocation
件這樣的:
var attr = syntaxRoot.DescendantNodes().OfType<AttributeSyntax>().Where(a => a.Name.ToString() == "DeploymentLocation");
然後我做這樣的事情:
if (attr?.Any() == true)
{
// remove existing attributes...
syntaxRoot = syntaxRoot.RemoveNodes(attr, SyntaxRemoveOptions.KeepNoTrivia);
}
但是,這結束了在我的文件中留下這樣的:
[assembly: ]
這顯然不是我想要的。我如何找到[assembly: ]
位並刪除以及DeploymentLocation
屬性?顯然,我不想刪除所有[assembly: ]
行,因爲有一堆線需要保留。
的assembly
位似乎並不被認爲是我的標籤在attr
一個Parent
(在Parent
)是整個文檔。那麼我需要怎麼做才能回到assembly
?那個叫什麼名字?