请帮助将此SQL字符串转义为C#字符串

请帮助将此SQL字符串转义为C#字符串,c#,C#,+1对所有保证的人来说假定整个事情都被当作sql来处理,而不是sql和C的组合。因此,如果我们使用逐字逐句的文字,我们只需要担心“s: string s=@“ “作为chkdata,”; 但是!我强烈建议不要这样做。你应该从SQL返回列,让你的应用层担心xml/html等问题。因此,如果我理解正确,你只需要转义双引号“而不是单引号” string s = @"'<ad name=""'+ am.name+ '"" tag=""C"" cityid=""'+cast(am.city_id

+1对所有保证的人来说

假定整个事情都被当作sql来处理,而不是sql和C的组合。因此,如果我们使用逐字逐句的文字,我们只需要担心
s:

string s=@“
“作为chkdata,”;

但是!我强烈建议不要这样做。你应该从SQL返回列,让你的应用层担心xml/html等问题。

因此,如果我理解正确,你只需要转义双引号
而不是单引号

string s = @"'<ad name=""'+ am.name+ '"" tag=""C"" cityid=""'+cast(am.city_id as varchar) +'"" 
stateid=""'+convert(varchar(11),cast(cm.state_id as varchar)) +'"" capital=""N""> 
</ad>' as chkdata ,";
string sqlqry=“”+
“‘作为chkdata’;

您可以使用逐字字符
@
我确信,但我面前没有Visual Studio来检查。

只需删除
@
,因为字符串不是逐字的…尝试了但没有起作用,这比简单地选择所需的列要好得多,让您的应用程序层担心xmlYes整个事情都被当作sql来处理,而不是sql和C的组合#
string sqlqry = "\'<ad name=""\'+ am.name_id + \'"" tag=""C"" 
cityid=""\'+cast(am.city_id as varchar) +\'"" 
stateid=""\'+convert(varchar(11),cast(cm.state_id as varchar)) +\'"" capital=""N"">
</ad>\' as chkdata ,";
sqlcountcmd = new SqlCommand(finalsqlqry, sqlconn);
string s = @"'<ad name=""'+ am.name+ '"" tag=""C"" cityid=""'+cast(am.city_id as varchar) +'"" 
stateid=""'+convert(varchar(11),cast(cm.state_id as varchar)) +'"" capital=""N""> 
</ad>' as chkdata ,";
string sqlqry = "'<ad name=\"'+ am.name_id + '\" tag=\"C\" " +
"sectordetailid=\"'+cast(am.sector_detail_id as varchar) +'\" " +
"stateid=\"'+convert(varchar(11),cast(cm.state_id as varchar)) +'\" capital=\"N\">" +
"</ad>' as chkdata";