自动转义字符串中的字符

问题描述 投票:0回答:1

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

数据库中的一些字符串可能包括我需要转义的撇号('),但我在互联网上找到的所有内容都表明我必须这样做

string.replace("'", "\\'");
,这看起来有点奇怪,因为它会是针对每种可能性的大量替换语句。

没有更好的方法吗?

c# string escaping
1个回答
1
投票

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

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

        return query;
    }
© www.soinside.com 2019 - 2024. All rights reserved.