【问题标题】:Implementing WCF callback in MVC在 MVC 中实现 WCF 回调
【发布时间】:2015-12-24 08:41:32
【问题描述】:

我在 MVC 中成功实现了一个 WCF 服务(使用 wsDualHttpBinding)。

“SendResult”函数从 WCF 正确调用,并在“Events_For_Export_Result”数组中接收结果。现在我应该将 MVC 重定向到控制器/视图以显示消息,但我无法在回调函数中调用操作。

如下所示,我试图让我的回调类继承自“Controller”并调用一个执行“RedirectToAction”的函数,但它不起作用。

我做错了什么?有没有办法在 void 方法中调用操作?

public class GPWCFServiceCallBackController : Controller, IGPWCFServiceCallback
{

    public void SendResult(GPWCFService.Events_For_Export_Result[] arrEvents, string resultMessage)
    {
        ShowResult(arrEvents, resultMessage);
    }

    public ActionResult ShowResult(GPWCFService.Events_For_Export_Result[] arrEvents, string resultMessage)
    {
        return RedirectToAction("Index", "Home");

    }

} 

我认为这与 wsDualHttpBinding 的性质有关。事实上,我无法更改函数的返回类型,因为我必须指定 [OperationContract(IsOneWay = true)] 属性。这样回调函数一定是void。

这是回调接口:

/// <summary>
/// The Callback Interface
/// </summary>
public interface IGPWCFServiceCallback
{
    [OperationContract(IsOneWay = true)]
    void SendResult(Events_For_Export_Result[] arrEvents, string resultMessage);
}

【问题讨论】:

    标签: c# asp.net-mvc wcf callback wsdualhttpbinding


    【解决方案1】:

    您的控制器类名称应以单词 Controller

    结尾

    看看这个question。

    【讨论】:

    • 谢谢宗介,是的,我忘记了。我已经改变了它,但它仍然不起作用。它什么都不做。
    猜你喜欢
    • 2012-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多