2015-05-15 3 views
2

Я пишу приложение C#, которое принимает встроенные файлы SQL и выполняет их с помощью FluentMigrator; и я должен найти способ лишить мой SQL определенных символов, которые вызывают проблемы FluentMigrator при попытке выполнить. Существует три способа выполнения SQL через FM: выполнить файл по имени, выполнить встроенный ресурс по имени и строку, содержимое которой является действительным SQL.Выполнить .NET-код в Build

Раньше я пытался использовать метод выполнения sql, содержащийся в строке, где я мог бы вырезать плохие символы, прежде чем передавать его в FM. Из-за других ограничений я не могу пройти этот маршрут и должен выполнить SQL, указав имя встроенного ресурса. Проблема здесь заключается в том, что я не могу разделить плохие символы перед выполнением этим методом.

Есть ли способ выполнить код, который может удалить плохие символы из моих встроенных файлов ресурсов во время сборки/компиляции. Я знаю, что есть события сборки, но они, похоже, ограничены функциями командной строки. Могу ли я сделать больше?

Редактировать: пример этих символов будет «\ r \ n», «\ n \ r» и даже «;» один на линии.

+0

"Плохие персонажи"? не могли бы вы объяснить это лучше и, возможно, привести пример? –

ответ

3

Поскольку вы можете вызывать произвольные функции командной строки во время события сборки, вы действительно ограничены только своим воображением. Например, вы можете скомпилировать инструмент дескриптора символов для исполняемого файла, а затем вызвать .exe из события сборки.