public byte [] LoadPictureBytes(String NameID) { String Extension = VirtualPathUtility.GetExtension( NameID).Replace(".", "").ToLower( ); if (Extension == "jpg") { ContentType = "image/jpeg"; if ((Path.IsPathRooted(NameID)) || (NameID.StartsWith("\\\\"))) { FileInfo fileInfo = new FileInfo(NameID); if (fileInfo.Exists) return fileInfo.LoadAs_Image().ConvertTo_JpgByteArray(); } return Data.DbServer3.Blob.MaterialienJPG.FindOrLoad_Short_ByNameID(NameID).Value; } else if (Extension == "png") { ContentType = "image/png"; return Data.DbServer3.Blob.MaterialienPNG.FindOrLoad_ByNameID(NameID).Value; } ContentType = "text/plain"; String FileName = Data.DbServer3.WordUp.Materialien.FindOrLoad_ByNameID(NameID).LastAssignedFilePath; BinaryReader BinReader = new BinaryReader(File.Open(FileName, FileMode.Open, FileAccess.Read, FileShare.Read)); byte[] Content = BinReader.BaseStream.ToByteArray((int) BinReader.BaseStream.Length); BinReader.Close(); return Content; }
/// <summary>Opens the dialog to gather an image.</summary> public static BitmapSource GatherImage(this OpenFileDialog ofd) { ofd.Filter = "Bilder|*.png;*.jpg;*.gif;*.bmp;*.tiff;*.wmp"; ofd.CheckFileExists = true; ofd.Multiselect = false; var result = ofd.ShowDialog(Application.Current.Windows.OfType<Window>().FirstOrDefault(x => x.IsActive)); if (result != true) return null; var fi = new FileInfo(ofd.FileName); if (!fi.Exists) return null; return fi.LoadAs_Image(); }
public void CreatePictureInformationForOneEntry (InformationenSource Source, Guid TypID) { Source.InformationToProcess = Data.DbServer3.AltErlaaInfo.CreateNewInformation(TypID, UserName); Source.InformationToProcess.Titel = NameForThisCollection; Source.InformationToProcess.BearbeitungsHinweis = "Fertig"; if (Source.ConnectedBildDaten.Count > 1) { int GenerationIndex = 1; InformationAddOn StartSibling = null; foreach (InformationAddOn Entry in Source.InformationToProcess.InformationenAddOns) { if (Entry.DataDependencyId == DataDependencyEnums.RootFDDIDsForBildOnlyInformation.StandBildMaterialRoot) //Guid.Parse("1186353e-c896-43e4-9921-f976d3a91e95")) // WerbungMaterial { StartSibling = Entry; break; } } if (StartSibling != null) while (GenerationIndex < Source.ConnectedBildDaten.Count) { StartSibling = Data.DbServer3.AltErlaaInfo.InformationenAddOns.InsertNewSibling (StartSibling); GenerationIndex++; } } List<InformationAddOn> materialInformationAddOns = new List<InformationAddOn>(); foreach (InformationAddOn DefinedMaterialEntry in Source.InformationToProcess.InformationenAddOns) if (DefinedMaterialEntry.DataDependencyId == DataDependencyEnums.RootFDDIDsForBildOnlyInformation.StandBildMaterialRoot) materialInformationAddOns.Add(DefinedMaterialEntry); int ConnectedBildDatenToProcess = 0; String OrganisationenNameID = String.Empty; DbEntities.dbserver3.alterlaainfo.rows.ProcessConnector NewStandBildConnector = null; Timing NewStandBildAnzTiming = null; foreach (InformationAddOn InfoAddOn in Source.InformationToProcess.InformationenAddOns) { if (InfoAddOn.DataDependencyId == DataDependencyEnums.RootFDDIDsForBildOnlyInformation.AuftraggeberFirmaRoot) // Guid.Parse("c4194cab-b13d-4207-a945-f37f59ec8146")) // Auftraggeber(Firma) { InfoAddOn.Tabelle = "Organisationen"; InfoAddOn.TabelleId = Source.OrganisationToProcess.Id; InfoAddOn.FreiText = Source.OrganisationToProcess.FreiText; OrganisationenNameID = Source.OrganisationToProcess.NameId; if (String.IsNullOrEmpty(Source.InformationToProcess.Titel)) { Source.InformationToProcess.Titel = Source.OrganisationToProcess.Name; } else { Source.InformationToProcess.Titel += " - " + Source.OrganisationToProcess.Name; } if (String.IsNullOrEmpty(Source.InformationToProcess.NameId)) Source.InformationToProcess.NameId = Basics.ConvertToCorrectFileNameElement (NameForThisCollection + "_" + OrganisationenNameID).Replace(" ", ""); continue; } if (InfoAddOn.DataDependencyId == DataDependencyEnums.RootFDDIDsForBildOnlyInformation.StandBildMaterialRoot) //Guid.Parse("1186353e-c896-43e4-9921-f976d3a91e95")) // WerbungMaterial { Material NewMaterial = InfoAddOn.GetOrCreate_ConnectedMaterial(); String NameID = String.Format("{0}_{1}_Seite{2:D1}_Bild1", NameForThisCollection, OrganisationenNameID, ConnectedBildDatenToProcess + 1); NewMaterial.NameId = NameID; NewMaterial.SubEntryId = String.Format("Seite{0:D1}_Bild1", ConnectedBildDatenToProcess + 1); NewMaterial.OriginalMaterialName = Source.ConnectedBildDaten [ConnectedBildDatenToProcess].BildDatenSource; FileInfo pictureFileInfo = new FileInfo(NewMaterial.OriginalMaterialName); if (pictureFileInfo.Exists) { NewMaterial.BlobContent = pictureFileInfo.LoadAs_Image().ConvertTo_JpgByteArray(); NewMaterial.BlobLength = (int) NewMaterial.BlobContent.Length; } NewMaterial.ModifyTimeStamp = DateTime.Now; NewMaterial.NameId = Path.GetFileNameWithoutExtension (NewMaterial.OriginalMaterialName); NewMaterial.Typ = Path.GetExtension (NewMaterial.OriginalMaterialName).Replace (".", "").ToUpper( ); NewMaterial.OriginalMaterialName = Path.GetFileNameWithoutExtension(NewMaterial.OriginalMaterialName); InfoAddOn.FreiText = NewMaterial.FreiText; InfoAddOn.TechnicalAddOn = "BackGround(" + NewMaterial.MaterialLink + ")"; ConnectedBildDatenToProcess++; continue; } if (InfoAddOn.DataDependencyId == DataDependencyEnums.RootFDDIDsForBildOnlyInformation.ConnectorStandBildRoot) // Guid.Parse("d48e159b-a985-4c23-8d8c-0fc75852a79d")) // WerbungMultiMedia { NewStandBildConnector = InfoAddOn.GetOrCreate_ConnectedProcessConnector(); NewStandBildConnector.TableName = SelectedTableDefinitionToCreate.TableName; NewStandBildConnector.Redaktion = "StandBild"; NewStandBildConnector.ConnectionStringName = "WPMediaAddOnDataConnectionString"; NewStandBildConnector.NameId = Basics.ConvertToCorrectFileNameElement(Source.InformationToProcess.Titel); NewStandBildConnector.TemplateId = DbBasics.TemplateBildOnlyGuidId; continue; } if (InfoAddOn.DataDependencyId == DataDependencyEnums.RootFDDIDsForBildOnlyInformation.AktivVonBisRoot) //Guid.Parse("2b854b0a-b2f3-46e9-b273-79fd1568ac07")) // AktivZeitVonBis { Timing NewTiming = InfoAddOn.GetOrCreate_ConnectedTiming(); NewTiming.ConnectedType = "Informationen"; NewTiming.TimingTypId = "AktivVonBis"; //NewTiming.TimeA = Source.Von; //NewTiming.TimeB = Source.Bis; NewTiming.ModifyTimeStamp = DateTime.Now; InfoAddOn.FreiText = NewTiming.FreiText; continue; } // if (InfoAddOn.DataDependencyId == DataDependencyEnums.RootFDDIDsForBildOnlyInformation.TimingsBerichtAnzVonBisRoot)// Guid.Parse("2b854b0a-b2f3-46e9-b273-79fd1568ac07")) // AktivZeitVonBis if (InfoAddOn.DataDependencyId == DataDependencyEnums.RootFDDIDsForBildOnlyInformation.TimingsStandBildAnzVonBisRoot)// Guid.Parse("2b854b0a-b2f3-46e9-b273-79fd1568ac07")) // AktivZeitVonBis { NewStandBildAnzTiming = InfoAddOn.Get_ConnectedTiming; NewStandBildAnzTiming.ConnectedType = "Informationen"; NewStandBildAnzTiming.TimingTypId = "AnzVonBis"; //NewStandBildAnzTiming.TimeA = Source.Von; //NewStandBildAnzTiming.TimeB = Source.Bis; NewStandBildAnzTiming.ModifyTimeStamp = DateTime.Now; InfoAddOn.FreiText = NewStandBildAnzTiming.FreiText; continue; } } if ((NewStandBildConnector != null) && (NewStandBildAnzTiming != null)) { NewStandBildConnector.ConnectedTimingsId = NewStandBildAnzTiming.TimingsId; NewStandBildConnector.TemplateId = DbBasics.TemplateBildOnlyGuidId; foreach (ChapterBase chapterBase in Source.InformationToProcess.GetChapters) { NewStandBildConnector.AddToUsedChapters(chapterBase); } Data.DbServer3.AltErlaaInfo.InformationenAddOns.Find (NewStandBildConnector.InformationenAddOnId).FreiText = NewStandBildConnector.FreiText; } }
public static void LoadPersonenPictures (List<Guid> InformationenIDs, ref DbEntities.CustomClasses.StandardModelle.CommonSearchClass SelectedEntry) { String PictureRoot = "\\\\master4\\Daten\\Bilder Hausschirm\\Wohnpark\\KAE\\AV\\Personen"; foreach (Person person in Data.DbServer3.AltErlaaInfo.Personen.Load_WithFilledMaterialConnector()) { String MaterialConnector = person.MaterialConnector; if (String.IsNullOrEmpty(MaterialConnector)) continue; String[] Elemente = MaterialConnector.Split(','); if (Elemente.Length < 5) continue; Guid MaterialID = Guid.Parse(Elemente[2]); Material material = Data.DbServer3.AltErlaaInfo.Materialien.FindOrLoad(MaterialID); if (material == null) { material = Data.DbServer3.AltErlaaInfo.Materialien.NewRow(); material.Id = MaterialID; material.NameId = person.Name + " " + person.Vorname; Data.DbServer3.AltErlaaInfo.Materialien.Rows.Add(material); } String PictureFileName = Path.Combine(PictureRoot, person.Vorname + " " + person.Name + ".png"); FileInfo fileInfo = new FileInfo(PictureFileName); if (!fileInfo.Exists) continue; material.OriginalMaterialName = PictureFileName; material.BlobLength = (int?) fileInfo.Length; material.BlobContent = fileInfo.LoadAs_Image().ConvertTo_PngByteArray(); } Data.DbServer3.AltErlaaInfo.SaveAnabolic(new Object()); Data.DbServer3.AltErlaaInfo.AcceptChanges(); }