我试图将参数传递给我的存储过程.他们是这样的
@p_latitude='',@p_longitude='',@p_miles='',@p_searchtext='',@p_maptownid=182,@p_regionid=0
Run Code Online (Sandbox Code Playgroud)
从代码我传递参数,如
cmd.Parameters.Add("@p_latitude", SqlDbType.NVarChar).Value="''";
cmd.Parameters.Add("@p_longitude", SqlDbType.NVarChar).Value="''";
cmd.Parameters.AddWithValue("@p_miles",0);
cmd.Parameters.Add("@p_searchtext",SqlDbType.NVarChar).Value="''";
cmd.Parameters.AddWithValue("@p_maptownid",maptownid);
cmd.Parameters.AddWithValue("@p_regionid",0);
Run Code Online (Sandbox Code Playgroud)
我收到了一个错误cannot convert navarchar to float.我试着以不同的方式发送null,string.empty.但是找不到它.
空字符串应该被传递""没有"''".撇号(')将作为字符串值传入,而不是作为字符串分隔符传入.错误消息表明您有一个传递nvarchar的float列.我怀疑@p_latitude和@p_longtitude参数是问题所在.尝试将值直接设置为DBNull.Value.
| 归档时间: |
|
| 查看次数: |
189 次 |
| 最近记录: |