/// <summary> /// Store the specified image against the specified char ID in the database. /// </summary> /// <param name="charID"></param> /// <param name="portrait"></param> private static void StorePortrait(long charID, Image portrait) { EMMADataSet.PortraitsDataTable table = new EMMADataSet.PortraitsDataTable(); EMMADataSet.PortraitsRow data = null; bool newRow = false; portraitsTableAdapter.ClearBeforeFill = true; portraitsTableAdapter.FillByID(table, charID); if (table != null && table.Rows.Count > 0) { data = table[0]; } else { newRow = true; table = new EMMADataSet.PortraitsDataTable(); data = table.NewPortraitsRow(); data.charID = charID; } MemoryStream stream = new MemoryStream(); portrait.Save(stream, System.Drawing.Imaging.ImageFormat.Jpeg); byte[] imageData = stream.ToArray(); data.portrait = imageData; if (newRow) { table.AddPortraitsRow(data); } portraitsTableAdapter.Update(table); }
/// <summary> /// Return the specified protrait row direct from the EMMA database /// </summary> /// <returns></returns> private static EMMADataSet.PortraitsRow LoadPortraitFromDB(long charID) { EMMADataSet.PortraitsRow retVal = null; EMMADataSet.PortraitsDataTable portraitData = new EMMADataSet.PortraitsDataTable(); portraitsTableAdapter.ClearBeforeFill = true; portraitsTableAdapter.FillByID(portraitData, charID); if (portraitData != null) { if (portraitData.Count == 1) { retVal = portraitData[0]; } } return retVal; }