public void OnPostUpdate(PostUpdateEvent updateEvent) { var entity = updateEvent.Entity as IDomainObject; // Мы умеет трекать только объекты реализующие IDomainObject, иначе далее будем падать на получении Id. if (entity == null || !TrackerMain.NeedTrace(entity)) { return; } //FIXME добавлено чтобы не дублировались записи. Потому что от Nhibernate приходит по 2 события на один объект. Если это удастся починить, то этот код не нужен. if (changes.Any(hce => hce.EntityId == entity.Id && NHibernateProxyHelper.GuessClass(entity).Name == hce.EntityClassName)) { return; } var fields = Enumerable.Range(0, updateEvent.State.Length) .Select(i => FieldChange.CheckChange(i, updateEvent)) .Where(x => x != null) .ToList(); if (fields.Count > 0) { changes.Add(new ChangedEntity(EntityChangeOperation.Change, updateEvent.Entity, fields)); } }
public EmailManager(TrackerMain mainForm) { _mainForm = mainForm; Requests = new ConcurrentQueue <User>(); _timer.Interval = 15000; _timer.Elapsed += Timer_Tick; _timer.Start(); }
public AccountsSetup(TrackerMain mainForm) { InitializeComponent(); _mainForm = mainForm; Users = new List <User>(); _accountsDoc = new XmlDocument(); _accountsDs = new DataSet(); InitializeComponent(); Icon = Properties.Resources.IconPng.ToBitmapImage(); }
public MoreWindow(TrackerMain mainForm) { _mainForm = mainForm; InitializeComponent(); Icon = Properties.Resources.IconPng.ToBitmapImage(); }