Автоматически присоедините XML-файлы к схеме XSD в Visual Studio?

Я просто обнаружил красоту автоматического поколения схемы XSD Visual Studio.*

Существует ли простой способ иметь VS, автоматически присоединяют файлы с конкретными именами к существующей схеме XSD? Таким образом, если я имею myconfig.xml файлы рассеялись в течение проекта (или несколько проектов), я хотел бы, чтобы они всегда проверили против myconfig.xsd, вместо того, чтобы должными быть открывать каждый XML-файл и связывать его вручную. Действительно ли это возможно?

* Для тех, кто не знаком: Открытый XML-файл, Схема XML/Create, и это создает хороший файл схемы на основе того, что это видит в Вашем XML-файле. Можно затем присоединить тот же XSD к другому XML-файлу путем открытия того файла и выбрать XML/Schemas и выбор соответствующей схемы из проекта. Вы затем получаете intellisense и проверку на всем Вашем элементе и названиях атрибута, требуемых элементах и атрибутах, и т.д.


Обновление: Я думаю, что не был действительно ясен.

Когда я создаю новое web.config зарегистрируйте где угодно в проекте, я вручную не присваиваю схему ему. Нет никакого пространства имен, указанного в XML. Тем не менее, Visual Studio автоматически знает для использования DotNetConfig.xsd:

XML Schemas dialog screenshot

По-видимому, Visual Studio имеет отображение где-нибудь, которое присваивает названные файлы web.config кому: DotNetConfig.xsd.

Теперь, предположите, что я хочу все названные файлы DbSchema.xml для автоматического использования схемы, я создал названный DbSchema.xsd. Существует ли способ сделать это?

6
задан Glorfindel 25 May 2019 в 07:03
поделиться

2 ответа

Любой тег внутри любого XML-документа может содержать ссылку на схему.

См. примеры в этом разделе: http://msdn.microsoft.com/en-us/library/ms757863(VS.85).aspx

1
ответ дан 17 December 2019 в 00:10
поделиться

Если ваши схемы находятся в том же рабочем пространстве (не обязательно проектном), что и ваши XML-файлы, Visual Studio будет автоматически использовать их для автозавершения и проверки, если у ваших файлов есть объявление пространства имен.

Вам даже не нужно вводить атрибут schemaLocation.

Попробуйте следующее:

  • Дважды щелкните по XML-файлу, чтобы открыть его
  • В появившемся теперь динамически пункте меню "XML" щелкните по "Схемам...". Это покажет вам текущее отображение от пространств имен к схемам.

Чтобы проверить, работает ли это, попробуйте поместить куда-нибудь открытую угловую скобку, в ней должны быть предложены имена элементов.

Редактирование: это также будет работать с XML файлами без пространств имен, но тогда вам, вероятно, придется добавить новый каталог схем в %Install%\Xml\Schemas, как описано здесь. Внизу описывается, как использовать элемент "Ассоциация" для ассоциирования схем по расширениям

.
5
ответ дан 17 December 2019 в 00:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: