向SqlParameter集合数组中添加参数——SQLHelp对数据访问层的优化(一)

这是今天下午忙活半天的成果,但不管怎样吧还是达到了想要的目的:通过集合数据自动添加SqlParameter参数到Command命令中。

思路很明确,也很简单,大致的可以分两步。

第一步,将用户输入的存储过程参数写入到一个SqlParameter集合数组中;

第二步,将SqlParameter集合数组中的参数元素导入到Command命令的Parameters集合中。

接下来要做的是分别实现这两步,在第一步中涉及到了vb.net的往数组中写参数的问题,第一次写这个程序,稍微遇到了一些麻烦。第二步中要注意参数类型的问题,正确的代码应该是这样的:

cmd.Parameters.Add(parameters(i))

下面的语句就会出现因参数类型不符,而导致无法传值的错误:

 cmd.Parameters.Add(parameters(i).Value)

针对这样的问题,细心是必须的,但是遇到错误后积极去研究程序的出错原因,对症下药,也是非常重要的。

这里重点说说第一步中如何将用户输入的存储过程的参数,参数类型,参数值传入到集合中。如果直接引用vb.net提供的SqlParameter方法,默认情况下你需要去匹配编译器默认的参数,使用起来不仅不方便,而且还容易出错,因此,就需要自己重新定义一个类完成相似的效果,这里与重写差不多,但并不是重写,因为方法名是自己定义的。

实现如下:先添加一个新的类叫PublicMethod,并在此类中添加一个Param方法,通过这个方法来自定义用户输入格式,把代码贴出来:

Imports System.Data.SqlClient
Public Class PublicMethod
    ''' <summary>
    ''' 创建一个包含参数名、参数类型、参数值的SqlParameter
    ''' </summary>
    ''' <param name="pameterName">参数名</param>
    ''' <param name="dbType">参数类型</param>
    ''' <param name="pameterValue">参数值</param>
    '
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值