c# - 如何分层 ASP.NET/C# Web 应用程序的最佳实践

标签 c# asp.net

我开发 ASP.NET/C# 网络应用程序已经有一段时间了,它的大小对于它的编程方式来说已经变得很大了。维护变得非常困难,而且变得越来越难,过去需要 1 小时才能更新的东西现在大约需要 3-4 小时。

我相信重新设计应用程序以使用不同的层将有助于解决其中的许多问题。然而,我读得越多,似乎每个人的做法都不同,但实现的目标大多相同。

我见过很多层,例如 Presentation/UI、DB、Business、Services 等。看起来 3 层可能是最好的,但我不确定。

Web 应用中应该有哪些层,每个层应该包含或限制包含哪些内容?

从以前的经验中得到的话是最值得赞赏的。

最佳答案

我认为常见的方法是采用 3 层:表示层、业务逻辑层和数据访问层。它应该提供一个良好的基础。

话虽如此,我需要指出的是,划分为层可能对 ASP.NET WebForms 项目没有多大帮助。这个框架最大的问题是它背后的代码诱使开发人员创建怪物页面,这些页面同时与所有层和服务对话以获取要显示的数据。解决办法是先解决这个表示层,让代码只与一个特定的层(通常是业务逻辑)交互。当(并且如果)这样做时,项目可能会成功重构。

关于c# - 如何分层 ASP.NET/C# Web 应用程序的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1772069/

相关文章:

c# - Console.SetWindowSize() 和 Console.Clear() 未按预期工作

c# - Web 服务字符串中的 Null 被接收为 string.empty

c# - 带参数的任务列表

c# - 系统.ComponentModel.Win32Exception : The network path was not found Error

javascript - Valums Uploader 额外请求负载添加到文件

c# - 从默认的 mvc 应用程序数据库中删除用户

c# - ItemDataBound 未触发

c# - 如何在母版页内的用户控件中获取内容页名称?

c# - 对齐文本右 asp :changepassword

c# - 创建 XLSX 文件需要更多时间来记录 100000 条记录并占用最大 RAM 内存