powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / XElement Name с двоеточием
7 сообщений из 7, страница 1 из 1
XElement Name с двоеточием
    #37941700
Фотография AHTOH_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создаю XML примерно так

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
XDocument doc = new XDocument();
            XNamespace nsa = "u";
            XElement XEl=
                new XElement("UBS", new XAttribute(XNamespace.Xmlns + "u", "http://www.www"),
                    new XElement("P" , new XAttribute("r", "1"),
                        new XElement("S", new XAttribute("n", "SID"), new XAttribute("v", "ЗАЯВЛЕНИЕ")
                            )
                        
                        )
                    
                    );
            
            doc.Add(XEl);
            
            doc.Save("inv.xml");



Получается что то вроде
Код: xml
1.
2.
3.
4.
5.
6.
<?xml version="1.0" encoding="utf-8"?>
<UBS xmlns:u="http://www.www">
  <P r="1" >
    <S n="SID" v="ЗАЯВЛЕНИЕ" />
  </P>
</UBS_TRANSFER>



Как сделать чтобы было так :
Код: xml
1.
2.
3.
4.
5.
6.
<?xml version="1.0" encoding="utf-8"?>
<u:UBS xmlns:u="http://www.www">
  <u:P r="1" >
    <u:S n="SID" v="ЗАЯВЛЕНИЕ" />
  </u:P>
</u:UBS_TRANSFER>



доки и гугл смотрел ни чего толкового не нашёл.
...
Рейтинг: 0 / 0
XElement Name с двоеточием
    #37941914
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
var doc = new XDocument();
var XEl =
    XHtml.Element("UBS", new XAttribute(XNamespace.Xmlns + "u", "http://www.www"),
        XHtml.Element("P", new XAttribute("r", "1"),
            XHtml.Element("S", new XAttribute("n", "SID"), new XAttribute("v", "ЗАЯВЛЕНИЕ")
                )
            )
        );

doc.Add(XEl);
doc.Save("inv.xml");



XHtml
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
public static class XHtml 
{ 
    static XHtml() 
    { 
        Namespace = "http://www.www"; 
    } 
        
    public static XNamespace Namespace { get; private set; } 

    public static XElement Element(string name)
    {
        return new XElement(Namespace + name);
    }
        
    public static XElement Element(string name, params object[] content) 
    { 
        return new XElement(Namespace + name, content);
    }
        
    public static XElement Element(string name, object content)
    { 
        return new XElement(Namespace + name, content); 
    } 
        
    public static XAttribute Attribute(string name, object value) 
    { 
        return new XAttribute(/* Namespace + */ name, value); }
        
    public static XText Text(string text) 
    { 
        return new XText(text);
    } 
        
    public static XElement A(string url, params object[] content)
    { 
        XElement result = Element("a", content); result.Add(Attribute("href", url)); return result; 
    } 
} 

...
Рейтинг: 0 / 0
XElement Name с двоеточием
    #37941931
Фотография AHTOH_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ Спасибо.
А родными средствами linq2xml это можно как то сделать?
...
Рейтинг: 0 / 0
XElement Name с двоеточием
    #37941948
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AHTOH_L МСУ Спасибо.
А родными средствами linq2xml это можно как то сделать?
Так XElement это и есть linq to xml.
...
Рейтинг: 0 / 0
XElement Name с двоеточием
    #37942485
Фотография AHTOH_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ, это понятно, я про то чтобы как то удобно, например как с атрибутом new XAttribute(XNamespace.Xmlns + "u", " http://www.www") и добавилось всё что надо. Почему бы так же с XElement не сделать :( .
...
Рейтинг: 0 / 0
XElement Name с двоеточием
    #37942563
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AHTOH_L,

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
XDocument doc = new XDocument();
XNamespace nsa = "http://www.www";
XElement XEl = new XElement(nsa+"UBS",
	new XElement(nsa+"P" ,
		new XAttribute(nsa+"r", "1"),
		new XElement(nsa+"S",
			new XAttribute(nsa+"n", "SID"),
			new XAttribute(nsa+"v", "ЗАЯВЛЕНИЕ")
		)
	)
);
XEl.SetAttributeValue(XNamespace.Xmlns + "u", nsa);
doc.Add(XEl);
...
Рейтинг: 0 / 0
XElement Name с двоеточием
    #37942802
Фотография AHTOH_L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazile, спасибо
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / XElement Name с двоеточием
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]