我正处于规划将大型经典ASP数据库应用程序转换为ASP.Net的早期阶段,我无法选择使用哪种数据访问方法.我使用过
Linq To sql,动态数据,强类型数据集,企业库(数据访问应用程序块)以及一小部分实体框架,但它们都没有作为“一个”跳出来.有太多的选择 – 我的头在游泳,帮我选择!
也许有助于给出我正在转换的应用程序以及优先级的一些背景知识……
>后端是Microsoft sql Server(2005或更高版本),我们致力于此,所以我不必担心支持不同的数据库平台.
>数据库非常成熟,包含大量业务逻辑.它高度标准化,并广泛使用存储过程,触发器和视图.我宁愿不同时重新发明两个轮子,所以我想尽可能少地对数据库进行更改.因此,我需要选择一种足够灵活的数据访问方法,让我可以解决数据库中的任何问题.
>该应用程序有许多数据输入表格和广泛的搜索和报告功能(报告是我将在稍后讨论的另一种野兽).
>应用程序需要足够灵活,以处理对数据库结构的微小更改.应用程序(和数据库)可以安装在不同的站点,对数据库进行微小的自定义修改.理想情况下,应用程序可以识别数据库扩展并做出适当反应换句话说,如果我需要在应用程序中存储O / R映射,我需要能够在新站点上安装应用程序和数据库时将其交换(或轻松刷新).
>快速应用程序开发至关重要.由于数据库已经完成并且用户界面将与现有应用程序紧密匹配,我希望找到一些我们可以相当快地解决这个问题的方法.我愿意牺牲不使用绝对最新和最好的技术,如果它将节省开发时间.换句话说,如果使用像Entity Framework这样的东西有一个陡峭的学习曲线,我可以使用强类型数据集和自定义DAL,如果它会加快这个过程.
>我是ASP.Net的新手,但我非常熟悉Classic ASP,T-sql和旧的ADO(例如断开连接的记录集).如果任何数据访问方法更适合来自我背景的人,我可能会倾向于这个方向.
感谢您提供的任何建议!