如何用每个X的特定值替换字符串中的"[X]"?

Yar*_*lan 0 c# string

string Sample=@"
Select * from Table1 where Id =[MY Id]
and Column2=[MY Column2 Value]
 ";
Run Code Online (Sandbox Code Playgroud)

这是SqlCommand CommandText我将在使用命令之前替换所有以[和end with]开头的字符串如何找到参数名称beetwen [和]?我是否必须使用string.IndexOf(Sample,'[')ets.还是有另一个空虚容易吗?

Bro*_*ass 7

不要这样做 - 请考虑使用SqlParameter而不是参数化你的查询,这是内置的,即:

using(SqlCommand cmd  = new SqlCommand("Select * from Table1 where Id = @id and Column2=@columnTwo", myConnection))
{
   cmd.Parameters.Add(new SqlParameter("@id", SqlDbType.BigInt)).Value = someId;
   cmd.Parameters.Add(new SqlParameter("@columnTwo", SqlDbType.NVarChar)).Value = "You name it";
   //..
}
Run Code Online (Sandbox Code Playgroud)