我以前几乎没有使用过设计模式、接口和.NET核心,所以我需要一些建议来为我当前的项目获得一个好的设计。
我创建了一个标准的ASP.NET Core MVC网站,需要它来访问来自不同数据库的数据。我打算将数据库访问作为存储库放在一个单独的类库项目中,以实现松耦合,并在必要时能够在未来更改任何数据实现。
为此,我只是将普通的SQL与SQL Server一起使用,而不是实体框架核心,以更好地理解和掌握我正在做的SQL。
该网站有一个左侧边栏,带有不同的菜单选项,可供多个授权用户访问不同的数据库。目前,第一个函数是从数据库中的数据创建一个XML文件,第二个函数是更新另一个数据库中表中的现有数据。在未来,MVC将像控制台一样让用户执行更自动化的工作。
我的问题:
-
我应该为每个特定数据库的每个存储库制作一个类库,还是只制作一个巨大的类库,其中每个特定数据库都有不同的接口和实现?
-
我引用了ASP.NET Core MVC项目中的类库。是否可以为中的每个特定存储库创建具有依赖项注入的实例
Program.cs
在ASP.NET Core MVC项目中?它会在类库中看到类吗?
-
此外,建议将生成器服务设置为
AddScoped
在依赖关系容器中?或
AddSingleton
?
-
我还想知道将存储库实现为Web API是否更好。。。只是来回路过Json
我使用的是Visual Studio 2022.NET Core 6。
提前感谢您的帮助/建议