在我们存储在db ...之前,我们可以使用SSIS来解析来自应用程序的数据吗?

hil*_*ary 2 .net asp.net ssis sql-server-2008

在这里探索一些东西的可行性......我们在mvc3 web应用程序中有一个UI页面,管理员将用它来上传'csv'文件.是否有可能拥有一个将被应用程序调用的SSIS包.如果存在无效数据,它将验证/转换所有这些数据并存储到db中是否全部有效或将错误详细信息返回给应用程序?

只是尝试利用SSIS的功能来解析文件和转换数据.如果这是不可能的,有更好的方法吗?

请提供你的想法...非常感谢!

更新:是的,需要动态执行ssis ..并在UI页面上回复消息.如果他的上传失败或根据SSIS将回复给应用程序的消息,则上传"上传者".

Wya*_*ett 5

您可以使用SSIS来解析文本文件.你也可以用大锤来修整指甲.更好的选择就是像FileHelpers这样的东西,让你远离文本分析自己解析文本文件的泥泞.


鉴于编辑和辩论,我将详细说明.主要是我看到一些直接来自你的MVC控制器调用SSIS的大问题:

a)大规模的外部依赖性.您的开发,CI和登台环境将需要启用SSIS的完整SQL服务器,并且可能需要一些其他配置,具体取决于实现细节.

b)速度 - SSIS是一个重要的工作引擎,在它开始工作之前需要一段时间才能启动.

c)消息传递 - 如果操作点让用户知道什么是错误,SSIS是错误的工具.除非您想编写一个工具将SSIS导入错误转换为可读英语.然后你应该停止你正在做的任何事情并出售该工具而不是解决这个问题.

另一方面,大多数基于.NET的文件解析和C#为您提供了大量的错误处理功能,使您可以更快地向用户提供可理解的错误消息.

最后,如果你在这里查看大文件,你真的需要考虑某种排队和消息系统.在这种情况下,SSIS可能会更有意义,尽管我仍然认为错误消息是无用的.