C # Scripting - нужен совет, пожалуйста - PullRequest
0 голосов
/ 20 августа 2010

Я разрабатываю приложение для выполнения заранее определенных «задач» в таблицах базы данных MSSQL. Это действительно инструмент, который поможет нам с некоторыми повторяющимися задачами преобразования / импорта данных.

В простейшей форме это может быть «инструкция», действующая на столе. то есть. Возьмите содержимое поля A и объедините его с полем B, затем напишите в поле C

Я реализовал базовую структуру (с использованием SQL SMO), которая позволяет подключаться к базе данных, выбирать таблицу и поля и определять выходную таблицу, и это работает нормально.

Теперь мне нужно реализовать какой-нибудь сценарий между ними, чтобы я мог

а. Создайте "действия", используя c #

б. Есть какой-то метод их тестирования?

с. Сохраните эти отдельные действия для будущего

д. Возможно, «свяжите» их вместе, чтобы сформировать более сложные действия.

Меня тянет к использованию классов Workflow Foundation, но (а) Я не знаю, насколько легко будет интегрироваться в мое приложение WinForms и (b) Существуют ли другие более практичные варианты, которые кто-либо нашел подходящими

Я использую C # .NET 3.5 VS2008

Если кто-нибудь может предложить какие-либо указатели, я был бы признателен.

Roger Сомерсет Великобритания

1 Ответ

0 голосов
/ 20 августа 2010

Рассматривали ли вы Службы интеграции SQL Server (SSIS) ?Этот инструмент MS очень мощный и позволяет создавать сложные действия, такие как получение данных из разных источников, сортировка, объединение и, как правило, связывание с ними и вывод их в разные места.И вы можете кодировать все, что не поддерживается, из коробки .Net.

Конечно, это не ваше собственное приложение, поэтому вы ограничены в том, как люди взаимодействуют с ним (в основном, с помощью предопределенных сценариев),тестирование будет более сложным, и вы перетаскиваете вместо того, чтобы писать код (который, как правило, отстой!).Так что не стоит использовать, если ваши пользователи должны динамически создавать новые задачи, но если это действительно отвечает всем требованиям, это вполне может быть самый быстрый способ.

Кроме этого, может показаться, что вы пытаетесь написать какую-то Domain Specific Language (DSL) для ваших пользователей для ввода в ваше приложение, но это будет много работы.

...