private static bool AddTerritoryCard(ref TerritoryCardData card) { try { using (var db = new TerritoryCardsDataContext()) { var newCard = TerritoryCardData.Copy(card); db.TerritoryCardItems.InsertOnSubmit(newCard); db.SubmitChanges(); card.ItemId = newCard.ItemId; return card.ItemId > 0; } } catch { return false; } }
public static bool AddOrUpdateTerritoryCard(ref TerritoryCardData card) { if (card.ItemId <= 0) return AddTerritoryCard(ref card); try { using (var db = new TerritoryCardsDataContext()) { var i = card.ItemId; var c = db.TerritoryCardItems.Single(x => x.ItemId == i); if (c == null) return AddTerritoryCard(ref card); c.ImageSrc = card.ImageSrc; c.Notes = card.Notes; c.TerritoryNumber = card.TerritoryNumber; c.DateCreated = card.DateCreated; db.SubmitChanges(); return true; } } catch (InvalidOperationException) { return AddTerritoryCard(ref card); } catch (Exception e) { throw e; } }