Страница:
Вопрос: XML Namespace | Добавлено: 30.10.07 21:46 |
Автор вопроса: ![]() |
у мелкомягких в xml (когда xls сохраняешь в xml) выходит такая штука:
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40">
т.е. у них ns по умолчанию указан, а потом ему ещё и псевдоним назначается. пытаюсь повторить - не получается. пишу вот такой код: using System;
using System.Collections.Generic; using System.Text; using System.Xml; using System.Xml.Serialization; namespace proExcelXML { public class clsTest { [XmlRoot(Namespace=someclass.cnst_myns_fullname)] public class someclass { public const string cnst_myns_fullname = "some full name of ns"; public string var1 = "1"; public string var2 = "2"; public string var3 = "3"; public string var4 = "4"; } public static void SaveBook() { someclass test = new someclass(); XmlSerializer xml = new XmlSerializer(typeof(someclass),someclass.cnst_myns_fullname); using (System.IO.FileStream strm = new System.IO.FileStream(@"c:\test.xml", System.IO.FileMode.Create, System.IO.FileAccess.Write, System.IO.FileShare.Read)) { string real_ns = someclass.cnst_myns_fullname; real_ns += "1"; // to comment XmlSerializerNamespaces nscoll = new XmlSerializerNamespaces(); nscoll.Add("myns", real_ns); xml.Serialize(strm, test, nscoll); } } } } когда в таком виде прогоняю, получаю: <?xml version="1.0"?>
<someclass xmlns:myns="some full name of ns1" xmlns="some full name of ns"> <var1>1</var1> <var2>2</var2> <var3>3</var3> <var4>4</var4> </someclass> а когда комментирую строку с to comment, то получаю: <?xml version="1.0"?>
<myns:someclass xmlns:myns="some full name of ns"> <myns:var1>1</myns:var1> <myns:var2>2</myns:var2> <myns:var3>3</myns:var3> <myns:var4>4</myns:var4> </myns:someclass> как мне добиться того, чтобы одно и то же namespace было объявлено как по умолчанию и при этом имело бы псевдоним myns? |
Ответы | Всего ответов: 0 |
Страница:
|