переопределить объект spring.net в нескольких файлах конфигурации

Я настраиваю свои файлы конфигурации xml для своего веб-приложения asp.net, используя инъекцию зависимостей Spring.net IOC. Я сослался на каждый из моих файлов конфигурации в web.config. Пример настройки в файле конфигурации spring.net (settings.xml):

<object id="obj1"
      type="NS.Common.Cache.Class, NS.Common"
      singleton="true"
      init-method="Initialize"
      destroy-method="Dispose">
  <property name="Name" value="My Name" />
</object>

Все работает нормально.

Теперь я устанавливаю свое веб-приложение в нескольких средах, поэтому я создаю файл конфигурации spring.net для среды, например . dev, qa, prod.

Таким образом, при установке приложения соответствующий файл Spring среды указывается в файле web.config. Это часть автоматического установщика.

В файле среды qa я хочу переопределить объект над «obj1» на:

<object id="obj1"
    type="NS.Common.Cache.Class2, NS.Common"
    singleton="true"
    init-method="Initialize"
    destroy-method="Dispose">
  <property name="Name" value="My New Name" />
</object>

Однако, поскольку это автоматизировано (добавление ссылки на файл среды), настройки. xml файл не изменяется.

И теперь ссылка на 2 файла с определенным объектом с тем же идентификатором - это вызывает серьезные проблемы, поскольку будут возникать ошибки времени выполнения.

Есть ли способ, который я могу включить в qa.xml и flag или что-то подобное, чтобы выделить это определение объекта переопределяет любые другие определенные объекты в любом другом XML-файле с тем же идентификатором объекта?

7
задан Marijn 23 August 2011 в 08:52
поделиться