<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://ddn.pluspedia.org/w/index.php?action=history&amp;feed=atom&amp;title=Express_Persistent_Object</id>
	<title>Express Persistent Object - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://ddn.pluspedia.org/w/index.php?action=history&amp;feed=atom&amp;title=Express_Persistent_Object"/>
	<link rel="alternate" type="text/html" href="https://ddn.pluspedia.org/w/index.php?title=Express_Persistent_Object&amp;action=history"/>
	<updated>2026-10-22T15:07:29Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in PlusPedia</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://ddn.pluspedia.org/w/index.php?title=Express_Persistent_Object&amp;diff=115947&amp;oldid=prev</id>
		<title>95.208.138.98: Init</title>
		<link rel="alternate" type="text/html" href="https://ddn.pluspedia.org/w/index.php?title=Express_Persistent_Object&amp;diff=115947&amp;oldid=prev"/>
		<updated>2010-10-24T19:30:01Z</updated>

		<summary type="html">&lt;p&gt;Init&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;eXpress Persistent Objects&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 (Abk. XPO) ist ein kommerzielles [[Object-Relational_Mapping|objectrelationales Mapping]] objektrelationales Mapping]] Tool für die [[.Net|.NET]] Entwicklungsumgebung, von der Firma Developer Express Inc. (Abk. DevExpress). Es kann sowohl für kleine, als auch für große Entwicklungsprojekte benutzt werden und ermöglicht das einfache Abbilden von Geschäftsobjekten auf ein relationales Datenbankschema über Built-In Attributes.&lt;br /&gt;
&lt;br /&gt;
=Built-In Attributes=&lt;br /&gt;
Um die Datenabbildung in den Geschäftsobjekten festzulegen, stellt XPO Attribute bereit die als Metadaten in die entsprechenden Klassen eingebunden werden. Über die Metadaten, werden die Abbildungsdarstellungen für das relationale Datenmodell festgelegt. Die verschiedenen Attribute werden in der [http://documentation.devexpress.com/#XPO/CustomDocument2005 Online-Dokumentation] beschrieben.&lt;br /&gt;
&lt;br /&gt;
=Datenzugriff=&lt;br /&gt;
XPO unterstützt zwei Arten um auf die persistenten Daten zuzugreifen. Zum einen stellt XPO eine eigene Klasse bereit, die XPCollection Klasse. Über die XPCollection Klasse kann eine Sammlung aller Objekte einer Klasse geladen werden. Über spezielle Kriterienoperatoren kann die Sammlung gefiltert werden. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Beispiel (in C# Syntax):&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Eine Person setzt sich zusammen aus einem Vor-, Nachnamen und einer Angabe eines Geschlechts (IstMann), die Werteausprägung der Geschlechtsspezifikation kann true (=ja) oder false (=nein) sein.&lt;br /&gt;
Um alle männlichen Personen zu bekommen, wird eine XPCollection geladen und anschließend gefiltert.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
XPCollection xpCollectionPerson = new XPCollection(typeof(Person);&lt;br /&gt;
CriteriaOperator.Parse(&amp;quot;IstMann==true&amp;quot;));&lt;br /&gt;
int anzahl = xpCollectionPerson.Count;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
XPO unterstützt seit der Version v2007 vol 3 eine andere Möglichkeit Daten aus der Datenbank abzufragen. Dazu wurde die XPQuery Klasse entwickelt, die die Erstellung und Nutzung von Ausdrücken der integrierten Abfragesprache ([[LINQ|LINQ]]) nutzt. Interessant bei der Nutzung von LINQ-Abfragen ist, dass die Abfragen erst ausgeführt werden, sobald die Daten benötigt werden.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Beispiel (in C# Syntax):&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Um das gleiche Ergebnis wie im Beispiel zuvor zu erhalten, wird eine LINQ-Abfrage erstellt.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
var maennlichePersonen = from per in new XPQuery&amp;lt;Person&amp;gt;()&lt;br /&gt;
           where per.IstMann == true&lt;br /&gt;
           orderby per.Name&lt;br /&gt;
           select per;&lt;br /&gt;
&lt;br /&gt;
int anzahl = maennlichePersonen.Count;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Codegenerierung=&lt;br /&gt;
Bei der automatischen Codegenerierung unterstützt XPO sowohl das [[Forward Engineering|Forward]], als auch das [[Reverse Engineerin|Reverse Engineering]]. Das Forward Engineering wird über die Built-In Attribute unterstützt. Dabei kann entweder ein [[Template|Template]] verwendet werden, welches eine Fachkonzeptklasse mit grundsätzlichen Mapping Attributen erstellt. Außerdem können die Metadaten manuell implementiert werden. &lt;br /&gt;
&lt;br /&gt;
Das Reverse Engineering kann ebenfalls über ein [[Template|Template]] automatisch generiert werden, dazu muss jeweils die Datenbank mit zugehörigen Anmeldeinformationen angegeben werden, um ein Modell auf Basis des Persistenzmodells zu generieren.&lt;br /&gt;
&lt;br /&gt;
=Weblinks= &lt;br /&gt;
Da DevExpress ein mittelständigs Unternehmen ist, existiert bislang keine gedruckte Literatur. Es kann lediglich auf den Webauftritt verwiesen werden. (Stand: 04.10.2010)&lt;br /&gt;
&lt;br /&gt;
==Online Dokumentation==&lt;br /&gt;
*[http://documentation.devexpress.com/#XPO/CustomDocument1998 Dokumentation]&lt;br /&gt;
==XPO Eigenschaften==&lt;br /&gt;
*[http://www.devexpress.com/Products/NET/ORM/features.xml Eigenschaften]&lt;br /&gt;
==Support Center==&lt;br /&gt;
*[http://www.devexpress.com/Support/Center/ Support]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:WPDel Ohne Diskussion]]&lt;br /&gt;
&lt;br /&gt;
== Init-Quelle ==&lt;br /&gt;
Entnommen aus der:&lt;br /&gt;
* [http://de.wikipedia.org/wiki/Express_Persistent_Object Wikipedia] &lt;br /&gt;
&lt;br /&gt;
Erster Autor: [http://de.wikipedia.org/wiki/Benutzer:Dertyranidenbassist Dertyranidenbassist] angelegt am 04.10.2010 um 11:43&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Vorlage:PPA-Mars}}&lt;/div&gt;</summary>
		<author><name>95.208.138.98</name></author>
	</entry>
</feed>