C# 在MVC中实现WCF回调
我在MVC中成功地实现了一个WCF服务(使用wsDualHttpBinding) 从WCF正确调用“SendResult”函数,并在“Events\u For\u Export\u Result”数组中接收结果。现在我应该将MVC重定向到控制器/视图以显示消息,但我不能在回调函数中调用操作 正如您在下面看到的,我试图使回调类从“Controller”继承,并调用了一个执行“RedirectToAction”的函数,但它不起作用 我做错了什么?是否有方法在void方法中调用操作C# 在MVC中实现WCF回调,c#,asp.net-mvc,wcf,callback,wsdualhttpbinding,C#,Asp.net Mvc,Wcf,Callback,Wsdualhttpbinding,我在MVC中成功地实现了一个WCF服务(使用wsDualHttpBinding) 从WCF正确调用“SendResult”函数,并在“Events\u For\u Export\u Result”数组中接收结果。现在我应该将MVC重定向到控制器/视图以显示消息,但我不能在回调函数中调用操作 正如您在下面看到的,我试图使回调类从“Controller”继承,并调用了一个执行“RedirectToAction”的函数,但它不起作用 我做错了什么?是否有方法在void方法中调用操作 public cl
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);
}
//
///回调接口
///
公共接口IGPWCFServiceCallback
{
[运营合同(IsOneWay=true)]
void SendResult(事件用于导出结果[]arEvents,字符串resultMessage);
}
您的控制器类名应以单词controller结尾
看看这个。谢谢Sousuke,是的,我忘了。我已经改了,但还是不行。它什么也不做。