从 .NET 4.x 迁移到 .NET Core 7 时,我应该将 UserManager 类更改为 UserService 并在 Program.cs 中执行 AddScoped<UserService> 等

问题描述 投票:0回答:1

我正在从 .NET 4.x 迁移到 .NET Core 7,在 4.x 项目中我有一个 3 层架构; BLL、DAL、UI。在我的 BLL 中,我有 UserManager、BasketManager 等管理器。

我试图了解应该更改哪些内容,以便通过其架构利用 .NET Core 7 的性能增益,并基本上以 .NET Core 7 的方式进行编码。

从根本上来说,是否应该将这些管理器更改为服务,以便使用 AddScoped 将它们添加到 Program.cs 中?

我已经阅读了大量 .NET Core 7 文档,但没有看到任何示例,可以在其中查看 .NET 4.x 应用程序,然后查看该应用程序迁移到 .NET Core 7 后的样子。

c# .net-core service architecture 3-tier
1个回答
0
投票

假设

UserManager
BasketManager
等是自定义类,那么您应该能够在迁移到 .net core 时保持它们原样。除非您使用已弃用的 API,否则您的 .net 框架代码应该可以在 .Net 7 中正常工作。但这实际上取决于您的应用程序类型以及您拥有的依赖项。

AddScoped
是“依赖注入”框架 Microsoft.Extensions.DependencyInjection 的一部分。 Asp.net Core 应用程序默认使用此模式,因此您可能需要重写您的 asp.net 应用程序以遵循新模型,以保持简单和一致。有关详细信息,请参阅从 ASP.NET Framework 升级到 ASP.NET Core

但是您也可以在桌面应用程序中使用依赖注入,甚至是.net框架应用程序。我倾向于使用依赖注入,但改造现有应用程序来使用它可能很困难。但桌面应用程序不会强迫您使用任何特定的架构,因此在迁移时进行尽可能少的更改可能更容易,并引入依赖项注入作为单独的更改。

© www.soinside.com 2019 - 2024. All rights reserved.