【问题标题】:How to intercept any WCF/Ria Service call on client?如何拦截客户端上的任何 WCF/Ria 服务调用?
【发布时间】:2013-02-14 07:45:55
【问题描述】:

我想拦截对 Silverlight 中 Ria 服务的任何调用,以便随后显示加载程序。是否可以通过一些 WCF Api 或者我必须编写自己的解决方案?

【问题讨论】:

    标签: c# .net wcf silverlight wcf-ria-services


    【解决方案1】:

    您可以创建上下文类的部分类,并在OnCreated 部分方法中添加一些客户端行为,例如提供BeforeSendRequestAfterReceiveReply 方法的IClientMessageInspector

    请参阅this question 或此blog post

    【讨论】:

    • 感谢您的回答,它确实很有用。但是,我的应用程序有多个域上下文,我想找到一种方法使其对所有 WCF 调用都是全局的,这样我就不必记住为每个上下文创建一个部分。我认为您的答案是通过更改 RIA 生成类的方式来实现此目的的一种方式,但如果可以省略它,我宁愿不要乱用它。
    • 如果您声明一个引用单个 DLL 的“behaviorExtensions”,然后在您的客户端“端点”标签中使用“behaviorConfiguration”引用它,则所有客户端 WCF 调用都将在没有任何代码的情况下被捕获。我提到的 DLL 有一个实现“IClientMessageInspector”的类。如果您为客户端 WCF 连接属性使用 .config 文件,这将起作用。如果您需要更多详细信息,请告诉我。
    猜你喜欢
    • 1970-01-01
    • 2019-06-10
    • 1970-01-01
    • 2012-01-12
    • 1970-01-01
    • 1970-01-01
    • 2017-04-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多