mam ten kod:usunąć niechciane (pusty) atrybut xmlns dodane przez appendChild
function setupProject($projectFile) {
[xml]$root = Get-Content $projectFile;
$project = $root.Project;
$beforeBuild = $root.CreateElement("Target", "");
$beforeBuild.SetAttribute("name", "BeforeBuild");
$beforeBuild.RemoveAttribute("xmlns");
$project.AppendChild($beforeBuild);
$root.Save($projectFile);
}
To powinny dodać nowy <Target name="BeforeBuild" />
do dokumentu XML.
Dodaje jednak także pusty atrybut xmlns=""
, którego nie chcę. (To rzeczywiście Visual Studio, który nie lubi tego atrybutu!)
<Target name="BeforeBuild" xmlns="" />
Ja już próbowałem ten kod:
$beforeBuild.RemoveAttribute("xmlns");
$project.AppendChild($beforeBuild);
$beforeBuild.RemoveAttribute("xmlns");
Dzięki za linki! Drugie rozwiązanie sprawdziło się dla mnie.Czy możesz wstawić ten fragment kodu do swojej odpowiedzi? Będzie to bardzo pomocne dla innych użytkowników. – ComFreek
@ComFreek: Nie ma za co! Zaktualizowałem swoją odpowiedź. – Neolisk
Zła odpowiedź - może działać, ale sugeruje zasadnicze nieporozumienie dotyczące przyczyny problemu. –