当使用 Visual Studio 中的发布选项发布 ASP.NET 应用程序时,会在 Web 服务器的 BIN 文件夹中生成一系列 DLL。Visual Studio 专门为 ASP.NET 生成的 DLL 与标准类库有什么区别?
我想重用 ASP.NET 应用程序中包含的类中的代码。
我的一个选择是将 ASP.NET 类转换为类库,因此是这个问题的原因。另一种选择是使用 Web 服务来公开其他应用程序所需的功能。
由 ASP.NET 生成的 DLL 与标准类库之间没有区别。尽管 Web 应用程序项目生成了一个 DLL,但它实际上不能重用(它可以,但它包含页面和用户控件的代码隐藏,但不包含标记),但每个其他 DLL 都可以重用。
使用服务和实施面向服务的架构 (SOA) 也是另一种选择,因此它实际上取决于您的需求是什么,以及您要重用什么。
选择类库而不是内置类的主要原因是它们可以与其他项目共享,或者可以分发 DLL 以供进一步使用。
我能想到的类库的好处是:
我通常将 Web 服务用于需要在应用程序/服务器之间进行通信的项目,而不是包装公共代码。
您应该在单独的程序集中提取要重用的代码,并在 Web 项目和其他项目中引用它。请勿将程序集与网页和其他应用程序中的其他应用程序特定代码一起使用。