对控制器操作的调用在执行后保持运行
本文关键字:运行 执行 控制器 操作 调用 | 更新日期: 2023-09-27 18:22:26
我有一个控制器,它有一个新创建的操作:
[HttpGet]
[Route("api/personintern/checkname/{dossierId}/{id}")]
public IHttpActionResult CheckName(Guid dossierId, Guid id)
{
try
{
var start = DateTime.Now;
var result = this.Manager.CheckName(dossierId, id);
if (result == null)
return NotFound();
var end = DateTime.Now;
var seconds = (end - start).TotalSeconds;
return Ok(result);
}
catch (Exception ex)
{
this.LogManager.Error(ex);
}
return NotFound();
}
如果我在return Ok(result)
行上放置一个断点,秒时间跨度表示操作在大约3秒内执行,这对于这个特定的请求来说是正常的。
然而,一旦我放手,页面就会继续加载,即使操作已经成功完成。
是什么导致了这种情况?我该怎么做才能找到它?
将作为EF记录实例的this.Manager.CheckName(dossierId, id)
的结果转换为DTO模型对象修复了它。我构建的旧业务代码返回了EF实例,我认为它是一个业务对象,因为名称空间非常混乱!
感谢约夫为我指明了正确的方向。