/// <summary> /// Updates or creates a new item, will associate with a session if a /// SessionId is included in the VM /// </summary> /// <param name="itemVM">View Model containing data for a character item</param> /// <returns></returns> public HttpResponseMessage Post(ItemViewModel itemVM) { Item dbItem = ModelConverter.ToDbItemModel(itemVM); if (dbItem.Id > 0) { itemRepository.UpdateItem(dbItem); } else { dbItem = itemRepository.CreateItem(dbItem); } if (itemVM.SessionId > 0) { itemRepository.AddItemToSession(dbItem.Id, itemVM.SessionId); } //Another hack, fix disappearing session lists from item library after grad school dbItem = itemRepository.GetItem(dbItem.Id); return(Request.CreateResponse(HttpStatusCode.OK, ModelConverter.ToItemViewModel(dbItem))); }