【发布时间】:2012-05-24 14:55:15
【问题描述】:
我想知道在使用这样的代码时是否应该使用 const 字符串:
public DataTable GetSomeData(int id)
{
var con = new SqlConnection(ConnString);
const string sql = "SELECT * FROM [data] WHERE [id]=@id";
var cmd = new SqlCommand(sql, con);
cmd.Parameters.AddWithValue("@id", id);
var dt = new DataTable();
con.Open();
SqlDataReader dr = cmd.ExecuteReader();
dt.Load(dr);
con.Close();
return dt;
}
ReSharper 建议我以这种方式解决它,但有人告诉我不应该这样做,因为它并不是真正恒定的。添加参数时它会发生变化。我认为这种方式是正确的,因为它在运行代码的服务器上是恒定的,并且只有在到达数据库时才会改变。
那么,最好的方法是什么?
【问题讨论】:
-
“添加参数时它会改变” - 是什么?
sql不会...
标签: c# sql string resharper constants