Почему каждый раз, когда я пытался добавить новый атрибут к узлу, он добавляет дополнительный атрибут "xmlns="
? любым способом предотвратить это?xml document, set attribute question
public void changeProjToAssembly(string projPath,string projRefName)
{
XmlDocument doc = new XmlDocument();
doc.Load(projPath);
XmlNode projectReferenceNode;
XmlNode itemGroupNode;
XmlNode root = doc.DocumentElement;
string s = doc.DocumentElement.GetNamespaceOfPrefix("");
XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable);
nsmgr.AddNamespace("rs", s);
projectReferenceNode = root.SelectSingleNode("/rs:Project/rs:ItemGroup/rs:ProjectReference[rs:Name='GS_POSLibrary1']", nsmgr);
itemGroupNode = root.SelectSingleNode("/rs:Project/rs:ItemGroup[rs:ProjectReference/rs:Name='GS_POSLibrary1']", nsmgr);
XmlElement newCd = doc.CreateElement("Reference");
newCd.SetAttribute("Include", "dasdsad");
newCd.InnerXml = "<HintPath>" + ".//sadssa/asdsad" + "</HintPath>"+
"<HintPath>" + ".//sadssa/asdsad" + "</HintPath>" +
"<HintPath>" + ".//sadssa/asdsad" + "</HintPath>";
itemGroupNode.ReplaceChild(newCd, projectReferenceNode);
Console.WriteLine("Display the modified XML document....");
doc.Save(Console.Out);
}
XML:
<ItemGroup>
<ProjectReference Include="..\common\librarycomponents\exportdb\GenerateDocLibrary.vbproj">
<Project>{9B3C9E8B-436B-4A16-87A8-E72CB2FFC6E6}</Project>
<Name>GS_POSLibrary</Name>
<Private>False</Private>
</ProjectReference>
<Reference Include="dasdsad" xmlns="">//I only need the Include Atrribute
<HintPath>.//sadssa/asdsad</HintPath>
<HintPath>.//sadssa/asdsad</HintPath>
<HintPath>.//sadssa/asdsad</HintPath>
</Reference>
Возможно, вы сможете бы продемонстрировать свой код? Как вы ожидаете, что мы узнаем, почему ваш код добавляет атрибут «xmlns», не показывая ваш код, даже если у нас есть ключ? Мне кажется противоречивым. –
Извините, что я добавил код сейчас, я пытаюсь отредактировать ссылку на проект в файле vbproj, который будет изменен как refreence сборки, непосредственно отредактировав его содержимое xml. – 3ggerhappy
Пожалуйста, покажите полученный XML. Кроме того, скажите, почему вы заботитесь об атрибуте xmlns. –