我目前正在工作中更新一些旧代码。我遇到了很多行,其中似乎毫无理由地使用了string.Format()。我想知道是否可以在不使用附加参数的情况下使用string.Format(),但我想不出任何用处。
这有什么区别?
string query = String.Format(@"select type_cd, type_shpmt from codes");
这:
string query = "select type_cd, type_shpmt from codes";
我也不认为@
是必需的,因为它不必是字符串文字,并且它不是多行字符串。
答案 0 :(得分:10)
剪切和粘贴失败。有人没有花时间清理代码。没有理由使用ws.connected
。只需将其删除并直接分配即可。
⚠️警告⚠️
如果此人正在使用string.Format
来组合参数,请保持警惕;应该使用SQLCommand和SQLParameter类来避免SQL注入。
答案 1 :(得分:4)
应{em}删除Format
,保留@
,并使查询更易读 :
string query =
@"select type_cd,
type_shpmt
from codes";
如果要修改表,字段名称等(您不能通过 Sql参数来完成),请尝试使用字符串插值:
string myTableName = "codes";
...
string query =
$@"select type_cd,
type_shpmt
from {myTableName}";