.net - 由于存储过程和调用代码之间不匹配,如何导致构建错误?

标签 .net sql-server stored-procedures building

我有一个 .NET 类(用于讨论,ClassA),它调用 SQL Server 存储过程(用于讨论,fooSproc),并使用 SqlDataReader 处理结果。处理行,并使用返回结果集中的列名称引用列。例如,其中 dr 是 SqlDataReader,类似于 dr["column_foo"]。

现在,举例来说,某人 checkin 了对 ClassA 的更改,以便在 fooSproc 返回的结果集中查找 column_bar。然而,那个人忽略了检查对 fooSproc 的更改,以致它实际上会返回 column_bar。

问题:代码可以编译,但由于缺少列而在运行时失败。

有没有办法让这种情况导致生成构建错误?当然,构建验证/验收测试在这里是有意义的,但尽早发现它会更便宜。请假装即使是表面的代码审查也超出了范围。

最佳答案

基本上,没有。它始终是一个运行时错误。

您始终必须针对 SQL Server执行代码,无论是使用 AutoSProc 进行解析、运行、反射(reflect),还是其他什么。 SQL Server 并不关心您是 Excel/VBA 还是 Visual Studio:您只是另一个客户...

关于.net - 由于存储过程和调用代码之间不匹配,如何导致构建错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3339335/

相关文章:

.net - 从 .Net UI 在 Databricks 上运行 Spark SQL 查询

c# - 将 MySQL 与 Entity Framework 结合使用时遇到的问题

c# - 在 C# 中创建自定义文件属性

sql-server - 如何从 Azure SQL 迁移到 SQL Server?

sql-server - SQL Server 存储过程区分大小写?

c# - 日期时间日/月 (02/12)

sql - 索引 SQL 表以查找最佳匹配字符串的最佳方法

sql - 使用 "Merge"语法合并重复记录

SQL Server输出参数问题

sql-server - 从 SQL Server 2012 存储过程发送电子邮件