C # лучший способ получить XSD из ссылочного проекта - PullRequest
1 голос
/ 20 января 2010

Мое приложение ссылается на другой проект, в котором есть XSD-файл.

Какой лучший способ получить этот XSD?

Я немного погуглил и нашел предложения, такие как загрузить сборку и получить ее, не проще ли?

Ответы [ 2 ]

2 голосов
/ 20 января 2010

Если XSD является встроенным ресурсом в сборке, его необходимо получить из сборки.

Если ваш проект ссылается и использует сборку, вам не нужно загружать ее снова (вам не нужно 2 копии в памяти).

Самый простой способ получить сборку - это один из типов, определенных в нем:

Type t = typeof(TypeInOtherAssembly);
Assembly assembly = t.Assembly;
assembly.GetManifestResourceStream(...);
0 голосов
/ 20 января 2010

Если вы добавили XSD в качестве ресурса, то самый простой способ - сделать автоматически сгенерированный класс Properties.Resources видимым и ссылаться на автоматически сгенерированное свойство. Вы также можете оставить Properties.Resources внутренним и добавить атрибут InternalsVisibleTo, чтобы позволить другой сборке иметь доступ.

Кроме этого подхода, вы можете использовать GetManifestResourceStream на целевой сборке для извлечения информации XSD.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...