- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当 T-SQL 过程引发错误 (SQLException) 时,我遇到以下代码的问题
var result = await conn.QueryMultipleAsync("Inventory.uspLoadItems", new
{
dbId = obj.myId,
},
commandType: CommandType.StoredProcedure);
var items = await result.ReadAsync();
var specificItems = MyCustomMapper.MapTo<MyItem>((dynamic)items);
我使用的是 Dapper 1.50.2 版。
进程被抛入未观察到的异常。
我可以一直跟踪异常直到 WebApi Controller 方法。 但是当 Controller 方法存在时,即使 WebApi session 已终止(收集 GC? ... ).看起来像是 Dapper 中的线程问题,但我不确定。
更新
我在 Microsoft Connect 上找到了以下链接,它似乎与该主题高度相关。 https://connect.microsoft.com/VisualStudio/feedback/details/2592987/sqldatareader-nextresultasync-causes-unobserved-task-exception-even-when-awaited
因此,对于遇到这种行为的任何其他人。您将不得不等待下一个 .NET 更新。
这不是 Dapper 的问题,但如果 Dapper 的贡献者能找到一个临时的解决方法,那就太好了 :)
现在我将所有 ReadAsync 更改为 Read(同步)以避免此 SqlDataReader 错误。
最佳答案
another (spawn and unfinished) thread continue to execute at var items = await items.ReadAsync();
听起来所有这些代码都存在于异步执行的函数中,不等待或以其他方式同步。当此函数仍在运行时主请求完成(这不是猜测,通过您的观察证明代码在 Controller 完成后执行)。然后,如果此代码崩溃,则不会观察到异常。
忽略未观察到的异常将是错误的修复。我建议无论如何都这样做,但正确的解决方法是等待此代码所属的任务。
因为仍在运行的是您的代码,所以它不是框架错误。您链接到的错误可能会导致框架代码稍后执行且不被察觉,但它不会导致您等待运行后的语句(再次)。
关于c# - Dapper SqlException 和 Unobserved 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40284205/
我正在使用 JDBC,并且正在运行一个查询。有没有办法从返回的 SQLException 对象中获取失败的原因? 特别是,我想知道我的查询是否违反了外键约束(以及哪一个)或键约束。 此结果是否特定于供
我用 C# 编写了一段代码,它在我的计算机上运行良好,在 Windows 7 (MS SQL Server 2008) 上运行,但在另一台计算机上运行 Windows Vista (MS SQL Se
我有一个 Web 服务代码,它连接到在 MySQL 上运行的数据库。我清理并构建了它,部署成功,但是当我测试时出现以下错误: Invoking wsimport with http://localho
这个问题已经有答案了: Getting java.sql.SQLException: Operation not allowed after ResultSet closed (2 个回答) 已关闭
我的 user 表以前有字符串主键,现在我添加了一个新字段 userid bigint(20) 并制作了这个主键。然后添加 ALTER TABLE smsusers AUTO_INCREMENT =
我正在尝试在 HSQLDB 数据库中插入新行。我有这个代码: private final String SQL_CREAR_ATLETA=" INSERT INTO ATLETA (ID_ATLETA
错误的屏幕截图我收到指向ItemsService中下面的‘GetAllItems()’方法的SQLException。“无效的列名OrderID1”。我有两个实体,Order和Item,我希望与每个I
错误的屏幕截图我收到指向ItemsService中下面的‘GetAllItems()’方法的SQLException。“无效的列名OrderID1”。我有两个实体,Order和Item,我希望与每个I
Screenshot of errorI am getting an SQLException pointing at the 'GetAllItems()' method below in t
我正在运行我的代码并收到此错误。但这是什么意思? The network path was not found Description: An unhandled exception occurred
对于确实具有平衡事务块的存储过程,您是否遇到过这种异常? 我仔细检查了存储过程,它正好有一个 TRANSACTION BEGIN和对应TRANSACTION END 错误记录 SqlException
我正在编写一个 MVC 5 互联网应用程序,我有一个每小时执行一次的重复任务。此任务使用 DbContext 类更新一些模型对象。该应用程序部署为 Azure 网站。 我每隔几个小时就会收到以下错误:
我有一个程序,可以将大约 1GB 的数据上传到 SQL Azure 数据库。我使用 SqlBulkCopy 上传此数据。我上传了约8,000,000个实体,平均一次上传32,000个实体,最多一次上传
我将我的 SQL Server 数据库从本地移植到生产环境,并在连接期间突然遇到以下错误 System.Data.SqlClient.SqlException: A connection was su
在询问之前我已经搜索过了,但我不知道我是否做错了什么。 我正在尝试做类似的事情: String query = "select nombre from DatosPersonas where nomb
当我尝试运行我的项目时,出现以下错误: java.sql.SQLException: Io exception: Connection refused(DESCRIPTION=(TMP=)(VSNNU
我正在将 DB2 与 JDBC 结合使用,当我在连接闲置几分钟后首次尝试运行时,下面的代码会抛出 SQLException。从第二次开始,它将完全按照它必须的方式工作。 ResultSet.next(
我试图插入用户从我在 NetBeans 上制作的 Java GUI 输入的信息,但我不断收到异常,我似乎无法找出我做错了什么。 (数据库名称是student,表也称为student(我知道不好)它有8
为什么我们在创建 jdbc 连接时必须抛出 SQLException,它的目的是什么?它是什么类型的异常?选中、运行时、未选中? 最佳答案 SQLException 派生自 Exception,但不是
我有一个现有的应用程序,它使用 MS SQL 存储过程来执行一些业务规则。当检测到错误时,使用 RAISERROR 将其作为异常返回到我的 .Net 应用程序。 然后 .Net 应用程序可以使用 Tr
我是一名优秀的程序员,十分优秀!