c# - 使用实体框架和原始 SQL 进行存储过程和异常处理
问题描述
ExecuteSqlRawAsync
我可以使用或在 EF中成功使用存储过程FromSqlRaw
,但我希望能够在存储过程使用ERROR_SEVERITY()
.
例如,我在存储过程中有一个插入语句,并且Try Catch
在过程中使用了一个。在我使用的捕获中,
SELECT
ERROR_SEVERITY() AS ErrorSeverity,
ERROR_PROCEDURE() AS ErrorProcedure,
ERROR_MESSAGE() AS ErrorMessage;
在 C# 中,我ExecuteSqlRawAsync
用来执行该过程,如果出现 SQL 错误,我不会得到严重性代码,因为ExecuteSqlRawAsync
. FromSqlRaw
即使对于插入,我是否需要使用来获取返回值?
我想在 C# 端捕获异常。
解决方案
Jeroen 的解决方案是正确的。我从存储过程中删除了错误处理,当然我现在在我的 C# 代码中得到了一个我想看到的 SqlException。
推荐阅读
- c - libmodbus 函数输出的部分输出打印
- swift - 在 Xcode 中使用干净的 swift 架构的注册页面出现问题
- java - Firebase 作业调度程序无法在 Oreo 设备上工作
- python - Django - 尝试加载该表单时,CustomModelForm 中的“extra_fields”在模型内联界面中给出“无法查找”错误
- intellisense - Monaco Editor - 创建自定义智能感知
- c - 计算C中未定义字符数组的索引#
- google-api - 如何通过他的 gmail 获取用户的名字和姓氏?
- node.js - 如何使用nodejs在redis缓存中实现hashset的分页
- c++ - 这是读取文件输入的正确方法吗?
- javascript - 如何使用 classList 切换显示/隐藏下拉列表内容?