using Microsoft.Extensions.DependencyInjection; using System; namespace BBWY.Client.ViewModels { public class ViewModelLocator { private IServiceProvider sp; public bool IsCreateWareManager { get; private set; } public bool IsCreateWareStock { get; private set; } public bool IsCreateOrderList { get; private set; } public ViewModelLocator() { sp = (App.Current as App).ServiceProvider; } public MainViewModel Main { get { using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public WareManagerViewModel WareManager { get { IsCreateWareManager = true; using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public WareStockViewModel WareStock { get { IsCreateWareStock = true; using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public BindingPurchaseProductViewModel BindingPurchaseProduct { get { using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public OrderListViewModel OrderList { get { IsCreateOrderList = true; using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public ChoosePurchaseSchemeViewModel ChoosePurchaseScheme { get { using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public _1688PreviewPurchaseViewModel _1688PreviewPurchase { get { using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService<_1688PreviewPurchaseViewModel>(); } } } public ShopSettingViewModel ShopSetting { get { using var s = sp.CreateScope(); return s.ServiceProvider.GetRequiredService(); } } public ProcurementAuditViewModel ProcurementAudit { get { using var s = sp.CreateScope(); return s.ServiceProvider.GetRequiredService(); } } public BillCorrectionViewModel BillCorrection { get { using var s = sp.CreateScope(); return s.ServiceProvider.GetRequiredService(); } } } }