gpt4 book ai didi

c# - 在网页以外的其他项目上添加 System.Web 是一种不好的做法吗?

转载 作者:太空狗 更新时间:2023-10-29 20:31:17 26 4
gpt4 key购买 nike

我正在为我的公司构建一个 web 项目的原型(prototype),我的想法是像一个模板一样开始构建一个新项目,所有必要的事情都已经完成,安全性、IoC、日志记录等......

我正在处理模板的安全方面...一开始我想制作一个自定义安全提供程序...但后来我意识到,Microsoft 已经通过 Membership 做到了...如果有任何项目将需要不同的提供者...他们只需要更改 web.config 就可以了...

但是我的问题来了...如果我希望不同的层能够获取用户信息...比如服务层(业务服务...不是网络服务),我需要包括该类库的 System.Web 和 System.Web.ApplicationServices。

这是一种不好的做法吗?我不想重新发明轮子,Microsoft 成员资格模型足以满足我的情况。

谢谢!

最佳答案

事实上,System.Web 是 ASP.NET 的一部分。例如,System.Web 中的许多方法都使用 HttpContext.Current——这是关于当前 HTTP 请求的上下文。在非 ASP.NET 应用程序中使用 System.Web 存在以奇怪的方式失败的风险,因为您可以访问具有可能使用 HttpContext 的方法的类。这是一个坏主意;所以,反过来也应该被认为是一种不好的做法。

还有 System.Web 的意图。是的,它只是一个程序集,IDE 可以让您引用几乎任何您喜欢的程序集。但是,System.Web 的目的是在 ASP.NET 应用程序的上下文中。这就是 Microsoft 的开发人员所假设的;因此,他们将在该假设下对其进行改进。将来,由于有利于 ASP.NET 应用程序的更改,它们可能会有效地破坏您的应用程序。如果发生这种情况,您没有办法重新设计您的应用程序来响应它,而不是在您真正计划设计(或重新设计)应用程序的这一部分的时候。

关于c# - 在网页以外的其他项目上添加 System.Web 是一种不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12370643/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com