asp.net - 如何像WCF一样实现Asp.net MVC One Way/Fire And Forget调用?

标签 asp.net asp.net-mvc wcf wcf-client

在 WCF 中你有这样的东西

[ServiceContract]
public interface IDoAuditService
{
    [OperationContract(IsOneWay = true)]
    [WebInvoke]
    void Audit(AuditEntry auditEntry);
}

这将允许消费者发出请求并继续流程,而无需等待响应。

我尝试过使用 AsyncController 的 Asp.net MVC,但消费者仍然会阻塞并等待,直到在 Controller 中调用回调。

我想要的是使用 Asp.Net MVC 但行为 WCF 就像,我想发出请求并继续流程而不等待请求被处理

最佳答案

在服务器上异步执行操作主体并立即返回调用者怎么样?这并不完全是一劳永逸,但它会效仿这一点。

public ActionResult MyAction()
{
    var workingThread = new Thread(OperationToCallAsync);
    workingThread.Start();

    return View();
}

void OperationToCallAsync()
{
    ...
}

关于asp.net - 如何像WCF一样实现Asp.net MVC One Way/Fire And Forget调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11121915/

相关文章:

c# - RadDatePicker 和 RadTimePicker 在回发后失去样式

c# - Asp.Net MVC - 使用 Entity Framework + Npgsql.Entityframework 访问 Postgresql

c# - WCF 服务接受 GZip 消息

c# - xsd :decimal in WSDL 的限制

c# - 在 OData 中提供 DateTime 值

c# - asp.net objectdatasource 从控件和文本框传递参数

asp.net - 为什么 IE 为具有鼠标悬停处理程序的服务器端元素添加 jQuery 属性?

c# - 在两个 "totally different"页面之间传递值

c# - Asp.net mvc identity SecurityStamp 无处不在注销

asp.net - 如何在ASP.NET MVC中使用Application_Error?