protected void Save_OnClick(object sender, EventArgs e) { if (!canAccessSection) { return; } if (selectedItem == null) { selectedItem = TagsMapper.CreateObject(); } else { selectedItem = BaseMapper.GetObjectFromContext <Tag>(selectedItem); } UpdateObjectFromFields(); Return returnObj; if (selectedItem.ID == 0) { returnObj = TagsMapper.Insert(selectedItem); } else { returnObj = TagsMapper.Update(selectedItem); } if (returnObj.IsError) { DisplayErrorMessage("Error Saving Item", returnObj.Error); } else { DisplaySuccessMessage("Successfully Saved Item"); } }
public void UpdateObjectFromFields() { IEnumerable <Tag> tags = TagsSelector.GetTags(); selectedItem.Media.MediaTags.Clear(); var counter = 0; foreach (Tag tag in tags) { if (!selectedItem.Media.MediaTags.Select(i => i.Tag).Contains(tag)) { if (tag.ID == 0) { TagsMapper.Insert(tag); } if (tag.ID != 0) { var newMediaTag = new MediaTag(); newMediaTag.MediaID = selectedItem.MediaID; newMediaTag.TagID = tag.ID; newMediaTag.OrderIndex = counter; selectedItem.Media.MediaTags.Add(newMediaTag); } counter++; } } if (selectedItem.Media != null) { TagsSelector.SetMedia(selectedItem.Media); } }