gpt4 book ai didi

c# - 从 wcf 到 asmx 的错误传播

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

我有一个网络方法 ( .asmx web service ),它使用另一个服务方法 ( WCF service )。但是,我现在想根据使用 FaultContract<T> 从 wcf 服务抛出的不同类型的自定义异常,在我的 Web 方法中编写更多逻辑。 .如果我将 .asmx Web 服务的目标框架从 2.0 修改为 3.x 以支持泛型,我也许能够实现这一目标。但是,这是不可取的,因为 Web 服务已经上线并且已在客户端使用其他遗留应用程序。

有人可以建议我如何在 .asmx web 方法中处理 wcf 自定义异常吗?只要我能够在我的 web 方法中识别出 wcf 错误的类型,我就不会太在意一般异常。

注意:我正在尝试实现一种分阶段停用方法,其中应将单个 .asmx Web 服务替换为其对应的 wcf。这是为了向利益相关者证明 web 服务和 wcf 服务如何在不影响业务的情况下共存。希望它有意义。

最佳答案

因为您只能在 .net2 中运行才能与 WCF 服务进行互操作,所以该服务必须使用 basicHttpBinding。这是因为 basicHttpBinding 使用 SOAP 1.1 与客户端通信,而 .net2 中没有 SOAP 1.2 堆栈。

如果服务定义了故障契约,那是因为服务想要向客户端公开强类型异常。

但是,我不知道 .net 2.0 客户端在收到这些时会发生什么,但我怀疑您的客户端会因为某种 .net 异常而崩溃。如果异常中有什么有用的东西可以用来处理我不知道,你必须自己测试一下。

无论如何,我想不出任何好的方法来让它起作用。希望对你有帮助。

关于c# - 从 wcf 到 asmx 的错误传播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22529743/

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