在ASP.NET(MVC)中从CSV/Excel导入期间,建议使用什么方法规范化数据
本文关键字:什么 数据 规范化 方法 导入期 MVC NET ASP 中从 Excel CSV | 更新日期: 2023-09-27 18:28:36
我知道Stack Overflow上有一千个与数据导入相关的问题,如果已经有人问过这个问题,请接受我的歉意,但我想知道是否有人能在C#/ASP.NETMVC 3+中从CSV/Excel导入时,为规范化数据提供任何经过测试的解决方案。
我可以编写一些代码来完成这项工作,但我想知道是否有任何开源库或工具可以帮助实现这一点。
我感兴趣的领域如下:
在导入数据时,我偶尔需要规范化一些字段,下面是一个简单的例子:
我的输入可能是:
Name, JobTitle
==============
Nick, Manager
Dan, Coder
我的表结构可能是
Name, JobTitleId
================
Nick, 1
Dan, 2
如果职位不存在,我希望在我的JobTitles表中创建它,并返回Id。如果它确实存在,我想存储ID。
在sumamry,我的问题是:
- 我应该采取什么技巧或方法来做到这一点
- 有没有任何开源/商业库可以处理这个问题——重新发明轮子没有意义
我应该采取什么技术或方法来做到这一点吗
我能想到的最简单的技术是一种非MVC方式:使用SSIS!如果安全性有问题,可以让ASP.NET作为中间人来接受Excel文件并将其传递给数据库。有很多使用Excel连接管理器的教程。例如导入Excel文件。SSIS为您提供了难以置信的灵活性,这可能有助于您规范化数据。
是否有任何开源/商业库可以处理这一问题-重新发明轮子没有意义
由于您可能已经投资了Visual Studio和SQL Server等Microsoft产品,因此与其尝试开源产品,不如利用它们来满足您的需求。
叹气
除此之外,如果你真的想看看工具,那么我听说有人推荐这些工具(没有使用过):
- RelativalExcel,但它不是免费的
- ExpertXLS Excel Library for.NET-此库不是免费的,但可与ASP.NET配合使用
- 这个博客似乎很好地参考了他尝试过的工具
其他替代方案可能是:
- 使用.NET将Excel加载到数据集中并动态生成SQL查询,或者将其传递给负责繁重工作的SQL Server sp
- 使用VBA分析Excel,然后将其用作ASP.NET的数据源