假设您必须快速构建一个在 Web 浏览器中工作的数据输入 UI,它必须与业务层交互,而业务层必须与数据层交互。
您只想连接到业务对象,而不是直接连接到数据库。
UI 的大部分视图都是简单的 CRUD 操作,在网格内进行编辑/更新。
但有些屏幕会更复杂,代表多对多的关系。
在 ASP.NET 中实现这一目标的最快方法是什么?
(注意:开发速度是高优先级,代码质量和可重用性是低优先级。)
假设您必须快速构建一个在 Web 浏览器中工作的数据输入 UI,它必须与业务层交互,而业务层必须与数据层交互。
您只想连接到业务对象,而不是直接连接到数据库。
UI 的大部分视图都是简单的 CRUD 操作,在网格内进行编辑/更新。
但有些屏幕会更复杂,代表多对多的关系。
在 ASP.NET 中实现这一目标的最快方法是什么?
(注意:开发速度是高优先级,代码质量和可重用性是低优先级。)
实体框架 + ASP.NET 动态数据?
如果开发速度是主要优先事项,那么就选择你所知道的。
例如,如果你知道 ado.net/enterprise 库,那就去吧。如果您知道 Entity Framework 或 LINQ,那就走那条路。
如果没有对您的技能进行总结,任何人都无法告诉您启动和运行某项工作的最快方法。
我用同样的方式为我的公司写了很多这样的小商业编辑器,让它快速工作,如果它被使用或需要改进,我稍后会处理。
启动一个新的 asp.net 项目。将类库添加到解决方案并从 asp.net 应用程序中引用它。
Asp.Net 应用程序
类库
这取决于应用程序的复杂性。我会使用 Linq to Sql。但是使用 Linq to Sql 并没有必要在业务层和数据访问层之间提供良好的抽象。但我发现使用 Linq to Sql 可以快速从存储中检索数据并将其显示在屏幕上。
此外,如果您想要快速的 UI,请查看动态数据网站。这也使用 Linq to Sql 或实体框架。
您必须考虑的一个问题是,如果您需要良好的设计或 RAD。
为简单起见,您可以使用一些经过时间测试的控件和对象:
用户界面层:GridView,用于显示和提供编辑和删除数据的链接。单击编辑链接可能会打开一个新的 Asp.net 网页,其中包含用于插入和更新记录的 FormView。使用 ObjectDataSource 链接业务逻辑层的方法以创建/读取/更新/删除记录。
业务逻辑层:除了创建 CRUD 方法之外,您可能需要使用轻量级可序列化数据传输对象在不同层之间传递数据,并使用自定义映射器将数据从其他层传输到其他层。
数据访问层:Linq to Sql 可能使数据访问和操作变得快速和容易。