我正在编写一个 C# 应用程序,它采用嵌入式 SQL 文件并使用 FluentMigrator 执行它们;而且我必须找到一种方法来去除我的 SQL 中某些导致 FluentMigrator 尝试执行时出现问题的字符。通过 FM 执行 SQL 的方式有 3 种:按名称执行文件、按名称执行嵌入资源、内容为有效 SQL 的字符串。
以前,我曾尝试使用执行包含在字符串中的 sql 的方法,在将坏字符传递给 FM 之前,我可以在其中去除坏字符。由于其他限制,我不能走这条路,必须通过给出嵌入资源的名称来执行 SQL。这里的问题是我无法在通过这种方法执行之前去除坏字符。
有没有办法在构建/编译时执行可以从我的嵌入式资源文件中删除坏字符的代码。我知道有构建事件,但它们似乎仅限于命令行功能。我可以做更多吗?
编辑:这些字符的一个示例是“\r\n”、“\n\r”,甚至是“;” 一个人在一条线上。