温莎城堡及其自己的配置文件

发布于 2024-08-27 05:23:52 字数 1017 浏览 8 评论 0原文

我使用 Castle Windsor 进行 IoC,并使用以下工厂将配置保存在 web.config/app.config 中:

public static TYPE Factory(string component)
    {
        var windsorContainer = new WindsorContainer(new XmlInterpreter());
        var service = windsorContainer.Resolve<TYPE>(component);

        if (service == null)
            throw new ArgumentNullException(string.Format("Unable to find container {0}", component));

        return service;
    }

和我的 web.config 看起来像这样:

<configuration>
  <configSections>
    <section name="castle" type="Castle.Windsor.Configuration.AppDomain.CastleSectionHandler, Castle.Windsor"/>
  </configSections>
  <castle>
    <components>
      <component id="Data" service="Data.IData, Data" type="Data.DataService, Data"/>
    </components>
  </castle>
  <appSettings>.......

效果很好,但我想将温莎城堡的配置放在名为 castle.config 的文件中。我该怎么做?

I am using Castle Windsor for IoC, and have the configuration held in the web.config/app.config, using the following factory:

public static TYPE Factory(string component)
    {
        var windsorContainer = new WindsorContainer(new XmlInterpreter());
        var service = windsorContainer.Resolve<TYPE>(component);

        if (service == null)
            throw new ArgumentNullException(string.Format("Unable to find container {0}", component));

        return service;
    }

and my web.config looking like this:

<configuration>
  <configSections>
    <section name="castle" type="Castle.Windsor.Configuration.AppDomain.CastleSectionHandler, Castle.Windsor"/>
  </configSections>
  <castle>
    <components>
      <component id="Data" service="Data.IData, Data" type="Data.DataService, Data"/>
    </components>
  </castle>
  <appSettings>.......

Which works fine, but I'd like to place the configuration for Castle Windsor in a file called castle.config. How do I do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

请恋爱 2024-09-03 05:23:52

WindsorContainer 将接受配置文件的名称作为构造参数:

公共 WindsorContainer(字符串 xmlFile)

摘要:初始化一个新实例
Castle.Windsor.WindsorContainer
使用xml文件来配置类
它。相当于使用新的
温莎集装箱(新
XmlInterpreter(xmlFile))

您的 castle.config 文件将如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <components> ...

WindsorContainer will accept the name of the configuration file as a construction parameter:

public WindsorContainer(string xmlFile)

Summary: Initializes a new instance of
the Castle.Windsor.WindsorContainer
class using a xml file to configure
it. Equivalent to the use of new
WindsorContainer(new
XmlInterpreter(xmlFile))

Your castle.config file would then look like this:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <components> ...
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文