在界面上有一个textbox,其值为:华东,华北,华南;存储过程中有一个变量:@location存储过程中运用的比较表达式为:
where location in(@location)请问一下像这种情况下,C#是如何处理textbox值中的参数的?谢谢。

解决方案 »

  1.   

    不懂你的意思. 
    ps 建议你使用charindex() 替换in 查询方式.
      

  2.   

    "华东,华北,华南"
    如果你用in
    得把上述变成"'华东','华北','华南'"
    否则报错..string str="华东,华北,华南";
    string newStr = "'"+str.Replace(",","','")+"'";然后直接用newStr做参数传进去就行了.
      

  3.   

    但是我传进来的值可能为'华东,华北,华南'呢
    charindex()中的第二个expression,岂不是也要动态的指定?
      

  4.   

    语法:
    CHARINDEX ( expression1 , expression2 [ , start_location ] ) 表达式1:我的值为:华东,华北,华南(即为我需要处理传进来的值,textbox中的值)
    表达式2:我的值需要从一张数据表中拼接起来,比如:华东,华北,华南,华中....(即亦需要动态获取)以上,请指教。
      

  5.   

    1.如果用in 的话
    ..把输入的字符串处理成"'华东','华北','华南'" 
    可以直接用select * from table where filename in ('华东','华北','华南')
    2.用CHARINDEX
    在外面把输入串处理成',华东,华北,华南,'
    select * from table where CHARINDEX(','+filename+',',',华东,华北,华南,')