Внедрение зависимостей и физические пути в среде ASP .NET - как? - PullRequest
2 голосов
/ 12 мая 2009

У меня есть веб-сайт, который использует инъекцию зависимостей, используя Castle Windsor.

Мне нужно использовать компонент, который должен знать путь к файлу. Я хотел бы указать путь в файле конфигурации как виртуальный путь относительно корневого каталога веб-сайта, поэтому я бы сделал это:

<component id="configuration.documentLoader"  type="SomeModule.XmlDocumentLoader, SomeModile">
    <parameters>
        <FileName>/documents/file.dat</FileName>
    </parameters>
</component>

Однако компонент, который я использую, ожидает, что путь будет полным физическим путем, поэтому приведенный выше пример потерпит неудачу. Запись полного пути в конфигурационном файле не вариант.

Как бы вы решили это?

Я думал о добавлении другого компонента, который будет выполнять перевод, и мой текущий компонент будет полагаться на этот компонент. Это перебор? Есть ли более элегантный способ решить эту проблему без изменения уже существующих компонентов?

1 Ответ

2 голосов
/ 13 мая 2009
IContributeComponentModelConstruction

Вы можете использовать это, чтобы переключить относительный путь на абсолютный.

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