在我的项目中,我希望用户选择数据提供者并选择他自己的数据库文件(如果存在);
问题是,当我启动应用程序时,如果数据库不存在,它会崩溃并以静默方式进行,因为每个ServiceClass都有DbContext的实例。 我使用mvvm light + simpleIoc,我想要:
-check database:
如果存在===>主窗口;
如果不是===> DbCon窗口;
- 管理ViewModelLocator或创建启动画面? 什么是最好的做法;
以及如何在后台制作DbContext;
public class ViewModelLocator : INotifyPropertyChanged
{
//DbContext
DbCon db = new DbCon();
// ViewModel of Database connection window
private DbConViewModel _dbConViewModel;
//ViewModel for Main window
public MainViewModel Main { get; set; }
//
public static ViewModelLocator Instance
{
get { return Application.Current.Resources["Locator"] as ViewModelLocator; }
}
//Constractor
public ViewModelLocator()
{
if (db.Database.Exists())
{
Main = new MainViewModel(DialogCoordinator.Instance, new PeopleService(), new StatusService(),
new UserService());
}
else
{
//I want show database connection Windows without Freezing
_dbConViewModel = new DbConViewModel();
}
}
}
对不起我可怕的英语^ _ ^谢谢你