我对我在几个线程中读过的参数几乎没有经验,这里不推荐使用Parameters.add (甚至编译器也这么说),您应该使用Parameters.AddWithValue。
但是现在我找到了这 post,它解释了为什么要使用Parameters.Add,因为它将指定的DataType发送给服务器,而当您使用Parameters.AddWithValue时,函数必须推断出在集合不匹配时转换它可能丢失的字符的DataType。
很清楚这点。回到Parameters.Add不是个好主意吗,还是应该让Parameters.AddWithValue清楚地意识到它必须进行的转换?
发布于 2017-09-11 14:48:54
这篇文章已经包含了关于如何避免你的问题的建议。
基本上,您需要使用正确的.Add过载
从MSDN中可以看到,只有一个标记为[Obsolete]的重载。我将使用最合适的.Add重载,以满足我的需要。
https://stackoverflow.com/questions/46157707
复制相似问题