/// <param name="closeWindow">The action that closes the related dialog.</param> protected TemplateChooserViewModelBase(Action closeWindow) { GcpProjectId = CredentialsStore.Default.CurrentProjectId ?? ""; OkCommand = new ProtectedCommand( () => { Result = CreateResult(); closeWindow(); }); }
/// <param name="closeWindow">The action that will close the dialog.</param> /// <param name="promptPickProject">The function that will prompt the user to pick an existing project.</param> public TemplateChooserViewModel(Action closeWindow, Func <Project> promptPickProject) { GcpProjectId = CredentialsStore.Default.CurrentProjectId ?? ""; OkCommand = new ProtectedCommand( () => { Result = new TemplateChooserViewModelResult(this); closeWindow(); }); SelectProjectCommand = new ProtectedCommand(() => GcpProjectId = promptPickProject()?.ProjectId ?? GcpProjectId); SelectedFramework = NetCoreAvailable ? FrameworkType.NetCore : FrameworkType.NetFramework; }