Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C++CLI / VB .Net / .Net-Framework » ASP.NET und XML

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 <
010
25.02.2007, 12:15 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,
Zu 1.: Ja
Zu 2.:
Da gehen die Meinungen auseinander. Was jetzt folgt sind meine eigenen Ansichten.
Wenn Sicherheit und Performance nicht wichtig sind, kann man XML einsetzen.
Es gibt z.B. den "WilsonXmlDbClient -- ADO.NET XML Provider" um mit ADO.NET eine XML-Datei als DB zu nutzen. Aber ein Ersatz für eine richtige Datenbank ist das nicht.
www.gotdotnet.com/workspaces/workspace.aspx?id=5699d55a-83a2-42c7-8361-4815cd7cd736
Weiter Vorteile:
- Datenvalität
- Zusammenarbeit von verschiedenen Systemen, Rechnerarchitekturen, Netzwerken etc.

Nachteil:
- niedrigere Performance
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
25.02.2007, 12:18 Uhr
Eroli



Dankeschön für die Informationen.

Dann werde ich den Suchpuffer jetzt erstmal außen vor lassen, da dieser, so wie er jetzt ist, zu einem Abbild meiner SQL-Datenbank führt und das muss ich ja nicht sein.
Wenn dann auhc noc die Performance niedriger ist, dann ergibt es überhaupt keinen Sinn mehr.


Nochmal vielen Dank,

Eroli
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
25.02.2007, 15:19 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,
sag ich doch. Lade die Daten die Du benötigst in ein DataSet über einen Datenadapter, oder per Hand. Der Datenadapter kappt die Verbindung automatisch nach dem Füllen des DataSet
(da.Fill(ds,"TabellenName")). Insert-, Update- und Deleteaktionen kannst Du dann, wenn benötigt manuell aufrufen.
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
25.02.2007, 15:37 Uhr
Eroli



also lade ich ALLE Daten in ein DataSet und filter die dann erst? Ist das nicht Leistungsfressend gelöst?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
014
25.02.2007, 16:13 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,

Zitat von Eroli:
also lade ich ALLE Daten in ein DataSet und filter die dann erst?

Genau.

Zitat von Eroli:
Ist das nicht Leistungsfressend gelöst?

Die Daten befinden sich dann im Arbeitsspeicher. Ein DataSet ist im prinzip nichts anderes als ein Xml-File.

Code:
<?xml version="1.0" standalone="yes"?>
<xs:schema id="dsPlantEvent" targetNamespace="http://www.tempuri.org/dsPlantEvent.xsd" xmlns:mstns="http://www.tempuri.org/dsPlantEvent.xsd" xmlns="http://www.tempuri.org/dsPlantEvent.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified">
  <xs:element name="dsPlantEvent" msdata:IsDataSet="true" msdata:Locale="de-DE">
    <xs:complexType>
      <xs:choice maxOccurs="unbounded">
        <xs:element name="DL_ALLEVENTS">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="EREIGNIS" type="xs:string" minOccurs="0" />
              <xs:element name="FK_STAENTE_STANDID" type="xs:decimal" minOccurs="0" />
              <xs:element name="LETZTESEREIGNIS" type="xs:dateTime" minOccurs="0" />
              <xs:element name="PK_ALLEVENTSID" type="xs:decimal" />
              <xs:element name="DAUER" type="xs:decimal" minOccurs="0" />
              <xs:element name="STARTDGRUNDWARTUNG" type="xs:dateTime" minOccurs="0" />
              <xs:element name="ENDEGRUNDWARTUNG" type="xs:dateTime" minOccurs="0" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:choice>
    </xs:complexType>
    <xs:unique name="Constraint1" msdata:PrimaryKey="true">
      <xs:selector xpath=".//mstns:DL_ALLEVENTS" />
      <xs:field xpath="mstns:PK_ALLEVENTSID" />
    </xs:unique>
  </xs:element>
</xs:schema>


Das ist im Prinzip ähnlich Deiner Variante, nur dass bei Dir die Daten direkt im XML-Format gespeichert werden. Hier ist eigentlich nur die Tabellenstruktur und deren Beziehung abgebildet (s. unique Tag). Zur Laufzeit wird diese Tabelle gefüllt und stellt eigentlich ein Memory-Cache dar. Wird z.B. die Form oder Webseite geschlossen, dem das Dataset gehört wird intern die .Dispose Methode des ds aufgerufen, d.h. der Speicher wird freigegeben (oder auch nicht )
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe

Dieser Post wurde am 25.02.2007 um 16:15 Uhr von Uwe editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 <     [ C++CLI / VB .Net / .Net-Framework ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: