[MVC] - Asynchronous操作
最近在项目里遇到个问题,是在MVC的项目里处理异步操作的,操作流程是这样的:
1.从MVC的一个controller调用一个异步方法:
public ActionResult CreateOrUpdateBillStockIn(BillStockInInput input)
{
_billService.CreateOrUpdateBillStockIn(input);
return Redirect("StockIn");
}
这里是被调用的异步方法,在该方法里连续调用了其他几个异步方法:
public async Task CreateOrUpdateBillStockIn(BillStockInInput input)
{
await ...;
await ...;
}
出现的问题:
有时候在CreateOrUpdateBillStockIn方法里的操作没有完成。
原因分析:
调用CreateOrUpdateBillStockIn的方法由于不是异步的,所以不会等待异步方法跑完,所以异步方法有被半途kill的风险。
解决思路及结果:
把调用CreateOrUpdateBillStockIn方法的方法也写成异步的,问题解决了。
[MVC] - Asynchronous操作的更多相关文章
- MVC基础操作
		
C#-MVC基础操作-数据的展示及增删改.登录页面及状态保持一.数据展示1.View代码: <%@Page Language="C#" Inherits="Syst ...
 - asp.net mvc后台操作之读写xml控制首页动态页面开关显示
		
一.背景 在asp.net mvc项目里,用户需要开拓几个活动版面,并以侧栏的方式呈现在首页右侧,几个活动时间不一致,为避免浏览者在活动未开放之时进入未开放的服务页面.因此不仅需要在活动代码中加入限制 ...
 - MVC 记录操作日志与过滤特殊字符
		
最近进行的MVC系统需要用到记录操作日志和过滤特殊字符的功能,如果每个action中都调用记录日志的方法就太麻烦了,所以根据需要结合mvc的过滤机制 写了个特殊字符验证与记录操作日志的公用类: pub ...
 - c#-MVC基础操作-数据的展示及增删改、登录页面及状态保持
		
一.数据展示 1.View代码: <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynam ...
 - Ext4 MVC CRUD操作
		
项目目录结构如下: (1)index.html <!DOCTYPE html> <html> <head> <title>用户管理</title& ...
 - ASP.NET MVC 表格操作
		
Beginners Guide for Creating GridView in ASP.NET MVC 5 http://www.codeproject.com/Articles/1114208/B ...
 - MVC删除操作前confirm提示
		
本段时间,忙于公司的ERP问题,博客也没有怎样更新了.昨晚于家中学习了MVC时,对删除记录前,让用户有后悔选择.即是说,能先给用户一个提示,然后再让用户决定是否删除记录.以前练习MVC,对删除记录,均 ...
 - MVC增加操作日志
		
在后台管理中,有一些操作是需要增加操作日志的,尤其是对一些比较敏感的金额类的操作,比如商城类的修改商品金额.删除商品.赠送金额等人工的操作.日志中记录着相关操作人的操作信息,这样,出了问题也容易排查. ...
 - asp.net mvc 系统操作日志设计
		
第一步.系统登录日志 通过signalr来管理用户的登录情况,并保存用户的登录记录. 第二步 通过mvc过滤器,来横切路由访问记录. 保存方式:通过httpclient异步请求webapi 数据通过m ...
 
随机推荐
- 如何解决vue2.0 打包之后 打开index.html出现空白页
			
如何解决vue2.0 打包之后 打开index.html出现空白页 1.打包之前修改三个文件 1.1.第一步,找到build文件,在webpack.prod.conf.js 第25行左右 ...
 - 分享:经常说你精通C语言,看看这十道题你会不会解!
			
今天给大家分享我们在日常工作中可能遇到的疑问,不看答案,你是否有把握都能答对?让我们来试试吧~ 一.会输出"hello-std-out"? 参考答案: stdout和stder ...
 - H3CNE(教程)
			
培训机构提供的ppt,可能也是来自于官方提供,涉及到H3CNE认证考试中的全部知识点,学真技术还得看这个.包括帧中继,哪怕是淘汰了十多年了. https://huxiaoyao.lanzous.com ...
 - [Android systrace系列] 抓取开机过程systrace
			
------------------------------------------------------------------------- 这篇文章的小目标:了解抓取开机过程systrace的 ...
 - LeetCode 018 4Sum
			
题目描述:4Sum Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c ...
 - C和指针---结构和联合
			
一.结构 1.C提供了两种类型的聚合数据类型---数组.结构.数组是相同类型的元素集合,它的每个元素长度相同,故可以通过下标引用或指针间接访问来选择的;而结构可以把不同类型的值存储在一起,由于结构的成 ...
 - buu学习记录(上)
			
前言:菜鸡误入buu,差点被打吐.不过学到了好多东西. 题目名称: (1)随便注 (2)高明的黑客 (3)CheckIn (4)Hack World (5)SSRF Me (6)piapiapia ( ...
 - 性能测试学习之路 (二)jmeter详解(jmeter执行顺序 && 作用域 && 断言 && 事务 &&集合点 )
			
1 Jmeter 工作区介绍 jmeter工作区分为3个部分:目录树.测试计划编辑区域.菜单栏. 2 Jmeter 执行顺序规则 Jmeter执行顺序规则如下: 配置元件 前置处理器 定时器 采样器s ...
 - 深入分析 Java Lock 同步锁
			
前言 Java 的锁实现,有 Synchronized 和 Lock.上一篇文章深入分析了 Synchronized 的实现原理:由Java 15废弃偏向锁,谈谈Java Synchronized 的 ...
 - 最近有安装了一次hadoop集群,NameNode启动失败,及原因
			
最近有安装了一次hadoop集群,NameNode启动失败,查看日志,找到以下原因: 遇到的异常1: org.apache.hadoop.hdfs.server.common.Inconsistent ...