【发布时间】:2019-10-11 09:57:19
【问题描述】:
我是 .NET Core 的新手,目前正在使用 WPF .NET Core 应用程序。我用三个不同的项目构建了我的解决方案:View、ViewModel 和 Model。
我的Model 包含业务逻辑,我在其中从不同来源获取发票数据。现在我需要排除具有某些发票编号的发票。我决定在 appsettings.json 文件中定义这些数字。经过一番研究,我了解到我必须在 View 项目的 App.xaml.cs 文件中的 OnStartup() 方法中初始化 IConfigurationBuilder 实例。我read 配置类应该在目标项目中定义(在我的情况下是Model 项目)并在View 项目的OnStartup() 方法中使用,因此可以使用依赖注入来传递配置类到目标项目,如this link 中所述。
但是,为了使这种方法起作用,我必须在我的View 项目中为我的Model 项目添加一个依赖项,以便可以在那里访问配置类。我相信这会违反 MVVM 模式——至少我是这么理解的。
您将如何解决这个问题?这里有哪些最佳实践?还是我做的事情完全错了?我也愿意接受使用完全不同方法的建议。
【问题讨论】:
标签: c# wpf mvvm dependency-injection .net-core