private void HandlePOST(Package package) { if (package.Event == (int)EventMapping.DataItemAdded_18) { DataItemAdded postParams = XmlSerializationHelper.Desirialize <DataItemAdded>(package.Data); DataItemAdded(postParams.PK, postParams.Id, postParams.Type); } }
private void DataGrid_InitializingNewItem(object sender, InitializingNewItemEventArgs e) { if (e.NewItem != null) { int recipientId = 0; NetObject netObject = (NetObject)e.NewItem; netObject.pId = Guid.NewGuid(); List <NetObject> objectList = new List <NetObject>(); if (e.NewItem.GetType() == typeof(Project)) { objectList = ProjectList.ToList <NetObject>(); recipientId = 12; } else if (e.NewItem.GetType() == typeof(Todo)) { objectList = TodoList.ToList <NetObject>(); ((Todo)e.NewItem).ProjectPid = selectedProject.pId; recipientId = 10; } else { throw new Exception("Unknown New Type"); } int maxCount = 0; string prefix = ""; foreach (NetObject p in objectList) { try { string[] idSplit = p.Id.Split('-'); int value = int.Parse(idSplit[1]); if (maxCount < value) { maxCount = value; if (idSplit[0].Length > 0) { prefix = idSplit[0] + "-"; } } } catch (Exception ex) { } } maxCount++; string newId = string.Format("{0}{1}", prefix, maxCount); ((NetObject)e.NewItem).Id = newId; DataItemAdded data = new DataItemAdded() { PK = netObject.pId, Id = newId, Type = netObject.GetType().ToString() }; tornado14Observer.Send(new Package(SENDERID, recipientId, (int)EventMapping.DataItemAdded_18, Method.POST, XmlSerializationHelper.Serialize(data))); if (e.NewItem.GetType() == typeof(Todo)) { DataItemChanged dataChanged = new DataItemChanged() { PK = netObject.pId, PropertyName = "ProjectPid", Type = typeof(Todo).ToString(), Value = selectedProject.pId }; tornado14Observer.Send(new Package(SENDERID, recipientId, (int)EventMapping.DataItemChanged_13, Method.PUT, XmlSerializationHelper.Serialize(dataChanged))); } } }