Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A ADO.NET DataSet az adatok relációs ábrázolását biztosítja. Hierarchikus adathozzáféréshez használhatja a .NET-keretrendszerben elérhető XML-osztályokat. Korábban ezt a két adatábrázolást külön használták. A .NET-keretrendszer azonban valós idejű, szinkron hozzáférést tesz lehetővé az adatok relációs és hierarchikus ábrázolásához az objektumon és az DataSetXmlDataDocument objektumon keresztül.
Ha egy DataSetXmlDataDocument-fájllal van szinkronizálva, mindkét objektum egyetlen adatkészlettel dolgozik. Ez azt jelenti, hogy ha módosítják az Adathalmazt, a módosítás az XmlDataDocumentben is megjelenik, és fordítva. A DataSet és XmlDataDocument közötti kapcsolat jelentős rugalmasságot biztosít azáltal, hogy lehetővé teszi, hogy egyetlen alkalmazás, amely egyetlen adatkészletet használ, hozzáférjen a Word Forms és a Windows Forms vezérlői, valamint a Visual Studio .NET tervezők köré DataSet épített szolgáltatások teljes csomagjához, valamint az XML-szolgáltatásokhoz, mint például az Extensible Stylesheet Language (XSL), XSL Transformations (XSLT) és XML Path Language (XPath). Nem kell kiválasztania, hogy melyik szolgáltatáskészletet célozza meg az alkalmazással; mindkettő elérhető.
Többféleképpen szinkronizálhat DataSet fájlokat. Ön megteheti:
Töltse ki a
DataSetsémát (azaz a relációs struktúrát) és az adatokat, majd szinkronizálja egy új XmlDataDocumenttel. Ez hierarchikus nézetet biztosít a meglévő relációs adatokról. Például:Dim dataSet As DataSet = New DataSet ' Add code here to populate the DataSet with schema and data. Dim xmlDoc As XmlDataDocument = New XmlDataDocument(dataSet)DataSet dataSet = new DataSet(); // Add code here to populate the DataSet with schema and data. XmlDataDocument xmlDoc = new XmlDataDocument(dataSet);Csak sémával rendelkező
DataSet-t (például egy erősen típusos DataSet-et) töltsön fel, szinkronizálja egy XmlDataDocument-tal, majd töltsön be egyXmlDataDocument-t XML-dokumentumból. Ez relációs nézetet biztosít a meglévő hierarchikus adatokról. A séma táblázatneveinek és oszlopneveinekDataSetmeg kell egyezniük a szinkronizálni kívánt XML-elemek nevével. Ez az egyezés érzékeny a kis- és nagybetűkre.Vegye figyelembe, hogy a
DataSetsémájának csak azokkal az XML-elemekkel kell megegyeznie, amelyeket elérhetővé kíván tenni a relációs nézetben. Így egy nagyon nagy XML-dokumentum és egy nagyon kis relációs "ablak" is lehet a dokumentumon. AXmlDataDocumentteljes XML-dokumentum megmarad annak ellenére, hogy csakDataSetegy kis részét teszi elérhetővé. (Erre részletes példa: DataSet szinkronizálása XmlDataDocument használatával.)Az alábbi kódpéldában a séma létrehozásának
DataSetés feltöltésének, majd xmlDataDocumenttel való szinkronizálásának lépései láthatók. Vegye figyelembe, hogy aDataSetsémának csak aXmlDataDocumentelemekkel kell egyeznie, amelyeket a DataSet használatával elérhetővé kíván tenni.Dim dataSet As DataSet = New DataSet ' Add code here to populate the DataSet with schema, but not data. Dim xmlDoc As XmlDataDocument = New XmlDataDocument(dataSet) xmlDoc.Load("XMLDocument.xml")DataSet dataSet = new DataSet(); // Add code here to populate the DataSet with schema, but not data. XmlDataDocument xmlDoc = new XmlDataDocument(dataSet); xmlDoc.Load("XMLDocument.xml");Nem tölthető be,
XmlDataDocumentha az adatokat tartalmazóvalDataSetvan szinkronizálva. A rendszer kivételt fog kivenni.Hozzon létre egy újat
XmlDataDocument, és töltse be egy XML-dokumentumból, majd nyissa meg az adatok relációs nézetét azDataSetXmlDataDocument tulajdonságával. Be kell állítania aDataSetsémáját, mielőtt bármelyik adatot megtekintené aXmlDataDocument-ban az Adathalmaz használatával. A séma táblaneveinek és oszlopneveinekDataSetismét meg kell egyezniük azoknak az XML-elemeknek a nevével, amelyekkel szinkronizálni szeretné őket. Ez az egyezés érzékeny a kis- és nagybetűkre.Az alábbi példakód bemutatja, hogyan érheti el az adatok relációs nézetét egy XmlDataDocumentben.
Dim xmlDoc As XmlDataDocument = New XmlDataDocument Dim dataSet As DataSet = xmlDoc.DataSet ' Add code here to create the schema of the DataSet to view the data. xmlDoc.Load("XMLDocument.xml")XmlDataDocument xmlDoc = new XmlDataDocument(); DataSet dataSet = xmlDoc.DataSet; // Add code here to create the schema of the DataSet to view the data. xmlDoc.Load("XMLDocument.xml");
Egy XmlDataDocument és DataSet szinkronizálásának másik előnye, hogy az XML-dokumentum pontossága megmarad. Ha az DataSet adatokat a ReadXml használatával tölti ki egy XML-dokumentumból, az adatok XML-dokumentumként való WriteXml visszaírása jelentősen eltérhet az eredeti XML-dokumentumtól. Ennek az az oka, hogy az DataSet XML-dokumentum nem tartalmaz formázást, például szóközt vagy hierarchikus információkat, például elemsorrendet. Az DataSet XML-dokumentum azon elemeit sem tartalmazza, amelyeket figyelmen kívül hagytak, mert azok nem egyeztek meg az adathalmaz sémával. Egy XmlDataDocument fájl szinkronizálása DataSet lehetővé teszi az eredeti XML-dokumentum formázási és hierarchikus elemstruktúrájának fenntartását az XmlDataDocumentben, míg a DataSet fájl csak az Adathalmaznak megfelelő adatokat és sémaadatokat tartalmazza.
Ha DataSet szinkronizál egy objektumot, az eredmények eltérhetnek attól függően, hogy az DataRelation objektumok beágyazva vannak-e. További információ: DataRelations beágyazása.
Ebben a részben
A DataSet szinkronizálása egy XmlDataDocumenttel Bemutatja, hogyan szinkronizál egy erősen típusos DataSet-et minimális sémával egy XmlDataDocumenttel.
XPath-lekérdezés végrehajtása adathalmazon Egy XPath-lekérdezés adathalmaz tartalmán végzett végrehajtását mutatja be.
XSLT-átalakítás alkalmazása adathalmazra Egy XSLT-átalakítás adathalmaz tartalmának alkalmazását mutatja be.
Kapcsolódó szakaszok
XML használata adathalmazban Azt ismerteti, hogy az DataSet XML hogyan működik adatforrásként, beleértve az XML-adatok tartalmának betöltését és megőrzését DataSet .
DataRelations beágyazása Ismerteti a beágyazott DataRelation objektumok fontosságát egy XML-adat tartalmának DataSet ábrázolásakor, és leírja, hogyan hozhatók létre ezek a kapcsolatok.
DataSets, DataTables és DataViews Leírja a DataSet használatát az alkalmazásadatok kezelésére és az adatforrásokkal való interakcióra, beleértve a relációs adatbázisokat és az XML-t is.
XmlDataDocument Az osztályra vonatkozó referenciainformációkat XmlDataDocument tartalmaz.