string tmpFilter=@"Order_Destination='KOHL'S' and isnull(Order_DestinationAbbreviation,'')<>''”;
DataRow[] tmpRows = this.myDataSet.Tables[this.myDataMember].Select(@tmpFilter);//此处加不加@,都出错误。

string tmpFilter=@"Order_Destination='KOHL'S' and isnull(Order_DestinationAbbreviation,'')<>''”;
DataRow[] tmpRows = this.myDataSet.Tables[this.myDataMember].Select(@tmpFilter);//此处加不加@,都出错误。

阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
你遇到了一个问题,在使用 Tables.Select 方法时,字符串中包含转义字符,添加了 @ 符号也会引起错误。
解决方案是使用 @ 符号来表示字符串中的转义字符,可以使用以下方法:
string tmpFilter = "Order_Destination='KOHL''S' and isnull(Order_DestinationAbbreviation,'')<>''";
在上面的代码中,我们使用了两个单引号来表示字符串中的单引号,这样可以避免转义字符的问题。
另外,如果你想使用 verbatim string literal(即使用 @ 符号),你可以使用以下方法:
string tmpFilter = @"Order_Destination='KOHL''S' and isnull(Order_DestinationAbbreviation,'')<>''";
在上面的代码中,我们使用了 @ 符号来表示字符串,但是由于字符串中包含转义字符,所以我们需要使用两个单引号来表示字符串中的单引号。