相关疑难解决方法(0)

使用.net核心进行Hangfire依赖注入

如何在Hangfire中使用.net core的默认依赖注入?

我是Hangfire的新手,正在寻找一个与asp.net核心兼容的例子.

c# hangfire asp.net-core

52
推荐指数
4
解决办法
2万
查看次数

在ASP.NET请求结束之前,是否需要完成没有返回的异步任务

我正在为我工​​作的公司内的交易车辆开发一个拍卖交易系统.

交易者可以设置警报,每当提交新的列表时,我想使用新列表的详细信息来搜索每个人的匹配警报,但这不应该是交易者应该等待回到成功列表确认的时间所以我想在后台运行它.

我的问题是,如果我标记该函数async并且不担心返回,那么ASP.NET MVC框架仍然希望在结束请求之前等待异步函数结束吗?

我知道我可能会测试这个但是我不知道怎么样,我的异步书还没有太深入.

谢谢.

c# asp.net-mvc asynchronous

7
推荐指数
1
解决办法
2672
查看次数

如何创建Async ActionResult来为以下轮询逻辑创建async-await模式?

我有一个循环,实际上等待一些进程完成一个Job并返回结果.

MyRestClient.FetchResult(id)MyRestClient.FetchResultAsync(id)两个提供给我,从一些远程服务获取结果并返回布尔值,如果它是完整的.

 public class StatusController: ActionController {

    public ActionResult Poll(long id){
        return new PollingResult(()=>{
            return MyRestClient.FetchResult(id) == SomethingSuccessful;
        });
    }
 }

 public class PollingResult : ActionResult{

     private Func<bool> PollResult;

     public PollingResult(Func<bool> pollResult){
         this.PollResult = pollResult;
     }

     public override void ExecuteResult(ControllerContext context)
     {
         Response = context.HttpContext.Response;
         Request = context.HttpContext.Request;

         // poll every 5 Seconds, for 5 minutes
         for(int i=0;i<60;i++){
             if(!Request.IsClientConnected){
                 return;
             }
             Thread.Sleep(5000);
             if(PollResult()){
                  Response.WriteLine("Success");
                  return;
             }

             // This is a comet, so we need to 
             // …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc asynchronous async-await

1
推荐指数
2
解决办法
2万
查看次数