gpt4 book ai didi

.net - 使用 WCF 服务连接到 AppInitialize

转载 作者:行者123 更新时间:2023-12-03 22:54:33 25 4
gpt4 key购买 nike

我的 WCF 服务有问题。我需要在 application_start 之前进行一次温莎容器注入(inject),并注意到我可以使用 AppInitialise 方法。它适用于 Visual Studio 调试,但是当我部署到 IIS 时,代码不会被触发。我初始化类如下

public static class Class1
{
public static void AppInitialize()
{
IWindsorContainer container;
container = new WindsorContainer("windsor.xml");
container.AddFacility<WcfFacility>();
container.Resolve<ProfileLookUpService>();
}
}

是否需要执行任何特殊任务才能使其在 IIS 上运行。我正在使用版本 6。

谢谢!

最佳答案

那么,你需要注意几件事:

  • WCF 服务可以是自托管的——它并不总是托管在 IIS 中,所以如果可能的话,不要依赖 IIS 特定的机制
  • 服务器端的 WCF 服务基本上由 ServiceHost 组成。 (或其自定义后代),它初始化 WCF 运行时,并将根据需要创建服务类实例来处理请求

  • 所以这真的取决于你想在哪里注入(inject)你的东西——我的直觉告诉我你可能对创建自定义 ServiceHost 后代的能力感兴趣,并 Hook 它的一些方法和事件来处理你的初始化。

    在此处查看有关该主题的一些非常好的文章和博客文章:
  • How to Initialize Hosted WCF Services
  • Castle Windsor and non-HTTP Protocol WCF Services
  • 关于.net - 使用 WCF 服务连接到 AppInitialize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2517853/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com