楼主在将网站从.net转移到.net core平台时遇到的一些坑记录下来,本篇文章会持续更新服务器
一、在.net core WebAPI接口中,解析外部post请求参数时,使用到Stream从流中读取Body参数,有并发请求时,个别请求会丢掉请求参数,致使接口请求失败,通过好几天调试终于发现问题问题以下图:多线程
这段代码在继承了IModelBinder类的BindModelAsync方法中,问题就出在图中CopyToAsync方法,因为BindModelAsync方法是多线程但并不是异步方法,导航到定义以下图:并发
因此这里改成CopyTo方法问题就解决了,正确代码以下图异步
二、最近在将.net平台的文件服务器代码转移到core平台遇到一个问题,以前在.net平台返回FilePathResult自动打开虚拟目录图片或文件,在coe平台使用FilePathResult一直报找不到对应路径的文件,后来发现core平台提供了另一个类PhysicalFileResultpost
.net平台代码以下:网站
core平台代码以下:.net
在使用PhysicalFile对象是须要传入文件绝对路径,改完就一切正常。线程