c# - SMO 创建的存储过程中的短路
问题描述
由于我不允许合理化一个庞大而可恶的数据库,我不得不为我的应用程序创建一个 C# Datalayer 生成器。我已经完成了很多工作,使用 T4 生成模型类和 Insight.Database 存储库,但我需要通过 Sql 管理对象创建我的用户定义表类型和存储过程。
我感兴趣的是,我可以在通过 SMO 创建时使用短路参数吗?我想要复制的是这样的:
CREATE PROCEDURE [dbo].[cip_GetLicenses]
@fldIndex int = null
AS
SELECT [fldIndex]
,[fldLicenceData]
FROM [dbo].[tblLicences]
WHERE (@fldIndex is NULL OR (fldIndex = @fldIndex))
我可以使用字符串生成器和一些列迭代相对容易地构造存储过程的主体,但创建参数是单独完成的。
StoredProcedureParameter 类型确实有一个 DefaultValue 属性,但它是一个字符串,遗憾的是,将其设置为“= null”只会在运行时引发异常。
任何人都可以建议吗?
解决方案
推荐阅读
- javascript - Jasmine(AngularJS)中方法内部的模拟常量
- php - 在 mPDF 中调整 css 大小
- java - 如何将对象作为参数传递给函数,然后让函数将子类型的新对象分配给它的参数?
- forms - Microsoft Forms 中预填充的员工评估
- java - 无法消费消息Kafka Spring Boot Docker Compose
- loops - Binance api“行包含空字节”实时数据错误
- python-3.x - 为什么 Python3 比 Python 慢?
- flutter - 在 Flutter web 中处理溢出
- c# - WPF 表单崩溃
- ruby - Ruby——使用现有数组中的自定义键和值创建哈希