Проблема с файлами трансформации в пакете nuget - PullRequest
4 голосов
/ 24 февраля 2011

Я создаю пакеты nuget для OSGeo.FDO, и у меня возникает следующая проблема:

FDO использует файл providers.xml, в котором перечислены все поставщики, которые он может использовать.Поэтому я создал основной пакет с именем OSGeo.FDO, содержащий следующее:

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<FeatureProviderRegistry/>

А затем я создаю пакет nuget для каждого провайдера.В каждый из них я включаю providers.xml.transform, например, со следующим:

<FeatureProviderRegistry>
   <FeatureProvider>
      <Name>OSGeo.PostgreSQL.3.6</Name>
      <DisplayName>OSGeo FDO Provider for PostgreSQL/PostGIS</DisplayName>
      <Description>Read/write access to PostgreSQL/PostGIS-based data store. Supports spatial data types and spatial query operations.</Description>
      <IsManaged>False</IsManaged>
      <Version>3.6.0.4707</Version>
      <FeatureDataObjectsVersion>3.6.0.4707</FeatureDataObjectsVersion>
      <LibraryPath>.\PostgreSQLProvider.dll</LibraryPath>
   </FeatureProvider>
</FeatureProviderRegistry>

Когда я устанавливаю только один пакет провайдера, он работает как положено, но как только я устанавливаю другой, он простоне меняет файл providers.xml.Хотя он говорит мне, что он был изменен, и Visual Studio спрашивает меня, хочу ли я его перезагрузить.Я говорю, что знаю, но это ничего не добавляет к этому.

Что-то не так с тем, что я делаю?

1 Ответ

1 голос
/ 25 февраля 2011

Преобразование NuGet XML может быть немного странным.Способ, которым вы можете сделать это, если схема позволяет это сделать, - сделать каждый тег уникальным, добавив атрибут.например, если у вас было

<FeatureProviderRegistry>
   <FeatureProvider name="OSGeo.PostgreSQL.3.6">
       etc...
   </FeatureProvider>
</FeatureProviderRegistry>

А потом

<FeatureProviderRegistry>
   <FeatureProvider name="Other Name">
       etc...
   </FeatureProvider>
</FeatureProviderRegistry>

Тогда он должен делать то, что вы хотите.Я понимаю, что это может быть не так, как вы хотите, чтобы ваша XML-схема, но если вы можете сделать это, это может быть обходной путь.

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