gpt4 book ai didi

c# - 在 IIS 7.5 中托管时自定义 WCF 登陆页面

转载 作者:太空宇宙 更新时间:2023-11-03 10:58:37 24 4
gpt4 key购买 nike

我已经通读了互联网上似乎可用的用自定义站点替换标准 WCF 登录页面的内容,但是,这些解决方案似乎不适用于 IIS 托管。两者 this questionthis walkthrough建议创建一个不匹配的消息处理程序并禁用元数据发布。但是,两者的评论都表明它在 IIS 中托管时不起作用,我可以确认情况确实如此。

是否缺少 IIS 所需的步骤?需要在服务器上配置一些东西才能工作吗?任何帮助都会很棒。这是一个 .NET 4.5 WCF SOAP 服务。

最佳答案

在 IIS 托管的 WCF 服务中,ServiceHost 由 w3wp 为您创建(相对于您创建它的 selfhost)。默认情况下,在此 ServiceHost 中添加了 ServiceDebug 行为,这导致它不起作用。从 WCF 4.5 开始,您可以轻松地在代码中配置 IIS 托管服务。将这段代码添加到您的服务实现中。

public class Service1 : IService1, ILandingPage
{
...
...

public static void Configure(ServiceConfiguration serviceConfig)
{
//Still continue to load the service configuration from your web.config file as before.
serviceConfig.LoadFromConfiguration();
//Remove the serviceDebug behavior.
serviceConfig.Description.Behaviors.Remove<ServiceDebugBehavior>();
}
}

有关在代码中配置 IIS 托管服务的更多详细信息,请参阅 this .如果您使用的是 .net 框架版本 < 4.5,您可以通过实现自定义服务主机工厂并在代码中自行完成所有服务配置来实现相同的目的。

关于c# - 在 IIS 7.5 中托管时自定义 WCF 登陆页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18533783/

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