Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
[gelöst] Entity Framework -> Entität aktualisieren -> Unicode
schaedld
myCSharp.de - Member

Avatar #avatar-2533.jpg


Dabei seit:
Beiträge: 1.433
Herkunft: Schweiz

Themenstarter:

[gelöst] Entity Framework -> Entität aktualisieren -> Unicode

beantworten | zitieren | melden

verwendetes Datenbanksystem: SQL Server 2005

Guten Morgen zusammen
Ich habe folgendes Problem: Ich lese eine XML-Datei, die bestimmte Konfigurationen für einen Workflow beeinhaltet. Diese müssen als Unicode in die Datenbank geschrieben werden. Die Tabelle in der DB sieht wie folgt aus (ich hab gelesen dass das Feld das Unicode beinhalten soll, als NVARCHAR deklariert sein soll).

T_Id = bigint / Allow Nulls = false
ConfigurationType = nvarchar(100) / Allow Nulls = false
ConfigurationXml = nvarchar(MAX) / Allow Nulls = true

Nun das Model des EF weist genau die gleichen Eigenschaften auf, nur wenn ich dann die Entität aktualisiere


            ObjectQuery<WizardConfiguration> q = model.WizardConfiguration;
            IQueryable<WizardConfiguration> ql = q.Select(p => p);

            if(ql.Count<WizardConfiguration>() > 0) {
                WizardConfiguration wzToUpdate = ql.ToList<WizardConfiguration>()[index];
                wzToUpdate.ConfigurationXml = content;
                wzToUpdate.T_CreateDate = DateTime.Now;
                wzToUpdate.T_LastChange = DateTime.Now;
                wzToUpdate.T_User = WindowsIdentity.GetCurrent().Name;
                wzToUpdate.T_Version = wzToUpdate.T_Version++;
            } else {
                throw new NotImplementedException("Table has no content");
            }

            model.SaveChanges();
wird die ConfigurationXML zwar geschrieben, aber leider nicht als Unicode und dass hat auf die Configuration des Wizards nicht gewollte Auswirkungen.

Ich hoffe ihr könnte mir weiterhelfen und danke euch bereits fürs Feedback.
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von schaedld am .
Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt
private Nachricht | Beiträge des Benutzers
schaedld
myCSharp.de - Member

Avatar #avatar-2533.jpg


Dabei seit:
Beiträge: 1.433
Herkunft: Schweiz

Themenstarter:

beantworten | zitieren | melden

Eine kleine aber nicht performante Lösung habe ich gefunden, wäre auf Verbesserungsvorschläge trotzdem dankbar.


        private void writeXmlToDataBase(char[] content, int index) {
            WizardConfigurationDataContext context = new WizardConfigurationDataContext(Settings.Default.Buraut_AisConnectionString);
            
            IList<WizardConfiguration> wzconfigEntry = (from entry in context.WizardConfigurations select entry).ToList<WizardConfiguration>();

            WizardConfiguration wizardconfigurationsToUpdate = wzconfigEntry[index];
            for(int i = 0; i < content.Length; i++) {
                wizardconfigurationsToUpdate.ConfigurationXml += content[i];
            }
            wizardconfigurationsToUpdate.T_LastChange = DateTime.Now;
            context.SubmitChanges();            
        }
Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt
private Nachricht | Beiträge des Benutzers
schaedld
myCSharp.de - Member

Avatar #avatar-2533.jpg


Dabei seit:
Beiträge: 1.433
Herkunft: Schweiz

Themenstarter:

beantworten | zitieren | melden

Lösung gefunden, es lag nicht am Encoding, sondern am falschen schreiben (*AHHHHHHHHHHHHHHHH*)
Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt
private Nachricht | Beiträge des Benutzers
dr4g0n76
myCSharp.de - Experte

Avatar #avatar-1768.jpg


Dabei seit:
Beiträge: 2.894
Herkunft: Deutschland

beantworten | zitieren | melden

Code schreiben? oder am XML zurückschreiben? Ich nehme an letzteres. ;-)
Seit der Erkenntnis, dass der Mensch eine Nachricht ist, erweist sich seine körperliche Existenzform als überflüssig.
private Nachricht | Beiträge des Benutzers