首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >提供SqlDbType的有效方法?

提供SqlDbType的有效方法?
EN

Stack Overflow用户
提问于 2015-05-18 21:06:57
回答 2查看 184关注 0票数 4

下面是我的工作代码。但是,我没有接受名称、值和SqlParameter的SqlDbType构造函数,我只想提供日期参数的类型。有没有一种不需要添加大量代码的方法?

代码语言:javascript
复制
SqlParameter[] parameters =  
{
    new SqlParameter("@START_ORDER", startOrder),
    new SqlParameter("@END_ORDER", endOrder), 
    new SqlParameter("@START_ITEM", startItem), 
    new SqlParameter("@END_ITEM", endItem), 
    new SqlParameter("@START_DUEDATE", dateFrom), 
    new SqlParameter("@END_DUEDATE", dateTo)
};
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-05-18 21:10:29

代码语言:javascript
复制
new SqlParameter("@name", SqlDbType.Whatever) { Value = value }

有些构造函数过载采用各种参数,但它们可能不值得为指定每个参数而费劲。上面的内容可能是最简单的。

(请注意,在某些情况下,您可能希望设置SqlValue而不是Value。)

票数 6
EN

Stack Overflow用户

发布于 2015-05-18 21:13:32

如果您正在执行大量的手动ADO.NET,一个很好的替代方法可能是将一些帮助程序构建到一个基类或实用程序类中,这也有助于确保您正在传递正确的类型:

代码语言:javascript
复制
public static SqlParameter CreateStringParam(string paramName,
    int length, string value) {}
public static SqlParameter CreateIntParam(string paramName,
    int? value) {}
// etc...

通过将null转换为DBNull.Value,并确保您记住字符串和数字的参数大小,这些帮助程序可以帮助您解决问题。

最多只能构建十几个数据类型,但更有可能的是您只使用了少数几个数据类型,所以您不需要这些类型中的很多。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30312834

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档