2014-12-19 2 views
0

создать класс, как:XML IntelliSense для C# класса

public class Employee 
{ 
public int X; 
public int Y; 
public Color whatever; 
} 

И я пишу XML-файл для этого класса, как:

<Employee> 
    <X>16</X> 
    <Y>17</Y> 
</Employee> 

Но я хочу иметь IntelliSense при написании XMLFILE, он должен сказать мне, что у меня есть атрибут X и Y, есть ли способ достичь этого?

И еще один вопрос: как работает xmlserializer? Не то, как я использую его, я хочу знать, как они создают xml-файл только с заданным классом. Использует ли он Отражение или что?

И извините за мой плохой английский ._.

+1

Для этого вам понадобится файл определения XSD (XML Schema Definition). Вы можете создать его с помощью инструмента [xsd.exe] (http://msdn.microsoft.com/en-us/library/x6c1kb0s%28v=vs.110%29.aspx). –

ответ

2

Когда у вас есть файл XSD объявляющего схему файла XML, вы можете позволить Visual Studio предоставят вам IntelliSense (автозаполнение и член информации) для редактирования файлов XML, как описано в XML Editor IntelliSense Features (см XML Document Validation для настройки этого) ,

См. How to create a XSD scheme from a class? для создания схемы XSD из класса.

И да, в основном все сериализаторы используют отражение для поиска имен и типов членов.