Библиотека мастера импорта данных для .Net? - PullRequest
2 голосов
/ 17 апреля 2009

Кто-нибудь знает о стороннем мастере импорта данных, который можно встроить в приложения? Он должен импортировать из Excel, Access, SQLServer, CSV, плоский файл, разделенный табуляцией, XML, Oracle и т. Д. У нас есть фиксированная структура данных в нашем приложении, и пользователь должен иметь возможность настроить мастер для соответствия его / ее полей импорта с наша собственная структура данных.

Мастер должен быть своего рода библиотекой - предпочтительно библиотекой типов .Net. Мы можем захотеть, чтобы он был как веб-ориентированным, так и настольным (следовательно, нам может потребоваться версия элементов управления ASP.Net и версия Winforms). Также может потребоваться интеграция с WPF и Silverlight.

Если мастер UI недоступен, кто-нибудь знает о библиотеке без пользовательского интерфейса, которая поддерживает легко настраиваемый импорт из множества источников данных?

1 Ответ

0 голосов
/ 17 апреля 2009

Если вы можете предположить, что в вашем приложении имеется SQL Server, довольно просто программно настроить пакет служб SSIS для выполнения этого типа преобразования. Ваше приложение предоставит пользовательский интерфейс, в котором вы сможете настроить метаданные для источника данных и отобразить их в месте назначения. Возможно, вы даже можете просто использовать редактор пакетов SSIS в самой BIDS для этой работы и включить в свое приложение средство для выполнения пакета.

Если SSIS вам недоступен, вам придется купить что-то коммерческое - я не знаю ни одного зрелого инструментария ETL с открытым исходным кодом такого рода.

Если вам строго не нужен набор инструментов на основе .Net (например, ваше приложение может просто раскошелиться на внешний исполняемый файл), существуют инструменты с открытым исходным кодом этого типа, в основном написанные на Java. Взгляните на предложения от различных открытых источников B.I. такие продавцы, как Джаспер или Пентахо.

Другой альтернативой может быть встраивание в вашу систему интерпретатора языка сценариев, такого как Python (см. IronPython - система Python, основанная на .net). Эти языки имеют множество библиотечных инструментов для чтения различных типов файлов. Язык может использоваться в качестве средства макросов для приложения, а импорт данных может быть реализован с помощью этого механизма. Это происходит за счет некоторой технической поддержки, так что это будет делать персонал поддержки, а не напрямую конечные пользователи. В зависимости от клиентской базы и других затрат на внедрение вашего приложения это может быть или не быть приемлемым.

...