aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2018-08-22 15:35:25 +0300
committerRoy Ben-Shabat <Roy@Twine-s.com>2018-08-22 15:35:25 +0300
commit072ee0c67a5c9c45be60fa3da915a493731e5b35 (patch)
tree0caf924de7768e5677a6fc0c0474cf116b8b166b /Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs
parentc256467acd899968a3e68e5dbf92019964cd6abf (diff)
downloadTango-072ee0c67a5c9c45be60fa3da915a493731e5b35.tar.gz
Tango-072ee0c67a5c9c45be60fa3da915a493731e5b35.zip
Users & Roles seems to be working...
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs')
-rw-r--r--Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs32
1 files changed, 21 insertions, 11 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs
index 7d82cbbbc..344d677ff 100644
--- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModels/MainViewVM.cs
@@ -8,14 +8,16 @@ using System.Threading.Tasks;
using Tango.BL;
using Tango.BL.Entities;
using Tango.Core.Commands;
+using Tango.MachineStudio.Common;
using Tango.MachineStudio.Common.Notifications;
using Tango.MachineStudio.UsersAndRoles.Navigation;
using Tango.MachineStudio.UsersAndRoles.Providers;
using Tango.SharedUI;
+using System.Data.Entity;
namespace Tango.MachineStudio.UsersAndRoles.ViewModels
{
- public class MainViewVM : ViewModel
+ public class MainViewVM : StudioViewModel<UsersAndRolesModule>
{
private ObservablesContext _organizationsContext;
private ObservablesContext _manageContext;
@@ -129,8 +131,6 @@ namespace Tango.MachineStudio.UsersAndRoles.ViewModels
_navigation = navigation;
_notification = notification;
- LoadOrganizations();
-
ManageOrganizationCommand = new RelayCommand(LoadSelectedOrganization, () => SelectedOrganization != null);
BackToOrganizationsCommand = new RelayCommand(BackToOrganizations);
ManageUserCommand = new RelayCommand(LoadSelectedUser, () => SelectedUser != null);
@@ -144,6 +144,12 @@ namespace Tango.MachineStudio.UsersAndRoles.ViewModels
RemoveUserCommand = new RelayCommand(RemoveSelectedUser, () => SelectedUser != null);
}
+ public override void OnApplicationReady()
+ {
+ base.OnApplicationReady();
+ LoadOrganizations();
+ }
+
private async void AddOrganization()
{
String name = _notification.ShowTextInput("Enter organization name", "Name");
@@ -258,15 +264,19 @@ namespace Tango.MachineStudio.UsersAndRoles.ViewModels
private void LoadOrganizations()
{
- _organizationsContext = ObservablesContext.CreateDefault();
- _organizationsContext.Configuration.LazyLoadingEnabled = false;
-
- _organizationsContext.Users.ToList();
- _organizationsContext.Contacts.ToList();
- _organizationsContext.Addresses.ToList();
- _organizationsContext.Machines.ToList();
+ Task.Factory.StartNew(() =>
+ {
+ _organizationsContext = ObservablesContext.CreateDefault();
+ _organizationsContext.Configuration.LazyLoadingEnabled = false;
- Organizations = _organizationsContext.Organizations.ToObservableCollection();
+ Organizations = _organizationsContext.Organizations
+ .Include(x => x.Machines)
+ .Include(x => x.Users)
+ .Include(x => x.Users.Select(y => y.Contact))
+ .Include(x => x.Users.Select(y => y.Address))
+ .Include(x => x.Address)
+ .ToObservableCollection();
+ });
}
public void OnDropRole(Role role)