using Microsoft.Extensions.DependencyInjection; using System; namespace BBWYB.Client.ViewModels { public class ViewModelLocator { private IServiceProvider sp; public ViewModelLocator() { sp = (App.Current as App).ServiceProvider; } public bool IsCreateWareManager { get; private set; } public bool IsCreateWareStock { get; private set; } public bool IsCreateOrderList { get; private set; } 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 BindingPurchaseProductViewModel BindingPurchaseProduct { get { using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public OrderViewModel OrderVM { get { IsCreateOrderList = true; using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public ShopSettingViewModel ShopSetting { get { using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public ChoosePurchaseSchemeViewModel ChoosePurchaseScheme { get { using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public OnlinePurchaseViewModel OnlinePurchase { get { using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public EditPriceViewModel EditPrice { get { using (var s = sp.CreateScope()) { return s.ServiceProvider.GetRequiredService(); } } } public UpdatePurchaseTaskViewModel UpdatePurchaseTask { get { using var s = sp.CreateScope(); return s.ServiceProvider.GetRequiredService(); } } public WebVM WebVM { get { using var s = sp.CreateScope(); return s.ServiceProvider.GetRequiredService(); } } } }