自动转义字符串中的字符

时间:2013-04-13 11:52:51

标签: c# string escaping

我正在开发一个C#项目,我从一个用户定义的数据库中导出数据,所以我不知道数据将包含什么或它将采用的格式。

数据库中的某些字符串可能包含我需要转义的撇号(')但我在互联网上找到的所有内容都显示我必须执行string.replace(“'”,“\'”) ;这似乎有点奇怪,因为它将成为每种可能性的大量替换语句。

有没有更好的方法来做到这一点。

感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:1)

我最近不得不针对同样的问题进行代码修复。我不得不在任何地方放置大量的string.replace()语句。我的建议是创建一个处理所有转义字符可能性的方法,并让您的查询字符串在执行之前通过此方法。如果你正确设计了你的结构,你只需要调用一次这个方法。

    public string FixEscapeCharacterSequence(string query)
    {
        query = query.Replace("'", "\'");
        //..Any other replace statements you need
        //....

        return query;
    }