3
vb.net에서 xml 리터럴을 실험하고 있습니다. 다음은 문제를 보여주는 작은 샘플입니다. 두 개의 PropertyGroup
노드를 빈 Visual Studio 프로젝트에 추가합니다.xml 네임 스페이스 및 XML 리터럴
Imports <xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
Module MyModule
Sub Main()
Dim vbproj = <?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
</Project>
vbproj.Root.Add(<PropertyGroup></PropertyGroup>)
Dim xNameSpace As XNamespace = "http://schemas.microsoft.com/developer/msbuild/2003"
vbproj.Root.Add(New XElement(xNameSpace + "PropertyGroup"))
Console.WriteLine(vbproj)
End Module
이 코드는 다음과 같은 출력을 기록 :
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup xmlns="http://schemas.microsoft.com/developer/msbuild/2003"></PropertyGroup>
<PropertyGroup />
</Project>
당신이 볼 수 있듯이, 첫 번째 PropertyGroup
노드가 중복 xmlns 선언을 포함하는 첫 번째 문자 XML, new XElement
로 두 번째로 추가됩니다. 왜 그런가? 피할 수 있을까?
대단원! 나는 넷을 사용하고있다. 그래서 이것은 나를 위해 완벽하게 작동한다! 고맙습니다. 나는이 SaveOptions에 대해 몰랐다. 아주 발견 할 수없는 :-( – jeroenh