Beste Tweakers,
Momenteel werk ik aan een console application die XML files uit een hotfolder moet inlezen, en vervolgens moet de data uit de XML file naar een SQL SERVER 2012 gestuurd worden. Nu heb ik een aantal oplossingen gevonden voor dit probleem maar ik weet niet wat nu de "best practice" is.
De XML file is zo opgebouwd dat ik waarschijnlijk 2 tabellen nodig heb. Er is namelijk algemene info en daarnaast zijn er meerdere "jobs" die voor kunnen komen. Dit is er soms 1 maar kunnen er ook tientallen zijn.
Ik weet niet of het verder uitmaakt maar er zitten soms ook optionele attributen / elementen in de XML file die dus niet altijd voorkomen.
Mogelijkheden die ik gevonden heb:
- In C# code XML file uitlezen, ontleden en via entity framework naar een database schrijven (nieuw object aanmaken en elk element / attribuut koppelen aan het nieuwe object)
- Stored procedure waar ik de volledige XML string naartoe stuur en die de file laten ontleden.
- In C# een bulk insert doen m.b.v. een XSD file.
Mijn vraag: welke optie is de "best practice" of misschien zijn er andere opties die beter zijn dan bovengenoemde? En welke optie is het snelst?
Het genoemde proces zal zo'n 30 x per dag uitgevoerd worden en gaat om zo'n 40 verschillende attributen / elementen.
Hartelijk dank voor eventuele tips!
Momenteel werk ik aan een console application die XML files uit een hotfolder moet inlezen, en vervolgens moet de data uit de XML file naar een SQL SERVER 2012 gestuurd worden. Nu heb ik een aantal oplossingen gevonden voor dit probleem maar ik weet niet wat nu de "best practice" is.
De XML file is zo opgebouwd dat ik waarschijnlijk 2 tabellen nodig heb. Er is namelijk algemene info en daarnaast zijn er meerdere "jobs" die voor kunnen komen. Dit is er soms 1 maar kunnen er ook tientallen zijn.
Ik weet niet of het verder uitmaakt maar er zitten soms ook optionele attributen / elementen in de XML file die dus niet altijd voorkomen.
Mogelijkheden die ik gevonden heb:
- In C# code XML file uitlezen, ontleden en via entity framework naar een database schrijven (nieuw object aanmaken en elk element / attribuut koppelen aan het nieuwe object)
- Stored procedure waar ik de volledige XML string naartoe stuur en die de file laten ontleden.
- In C# een bulk insert doen m.b.v. een XSD file.
Mijn vraag: welke optie is de "best practice" of misschien zijn er andere opties die beter zijn dan bovengenoemde? En welke optie is het snelst?
Het genoemde proces zal zo'n 30 x per dag uitgevoerd worden en gaat om zo'n 40 verschillende attributen / elementen.
Hartelijk dank voor eventuele tips!