Question : Sauvant et recherchant l'objet au dossier using XML dans VS2005

J'essaye de créer une méthode générique pour sauver un objet dehors à un dossier et le rechercher encore.  Je devine que XML est la manière d'aller, mais tout les exemple que je trouve pour avoir besoin d'un de plus haut niveau de .NET que j'ai accès to.

What je veux est n'importe quoi de pareil : employé de classe du

public {nom = "" privés de corde de
; ssn = "" privés de corde du
; nom public public de corde du
des employés du
() {
} {le
obtiennent {this.name de retour ; } le
a placé {this.name = valeur ; } corde publique SSN du
du
} {le
obtiennent {this.ssn de retour ; } le
a placé {this.ssn = valeur ; } le

I du
du
}} veulent pouvoir l'employer aiment ceci : employé du

IEM = nouvel employé () ;
SaveObject (IEM, @ " c:\temp\myemp ") ;

… et puis employé du later
IEM = RetrieveObject (@ " yemp de c:\temp\m ") ; le

Can ceci soit fait avec VS2005 ?  Que les méthodes contiendraient-elles ?
class= de

Réponse : Sauvant et recherchant l'objet au dossier using XML dans VS2005

Il est plus compliqué qu'il est évident ainsi j'ai attaché un certain code qui le fera (voir ci-dessous) car une classe de PHP. C'est seulement un panier très simple mais il peut être facilement prolongé.

Il est employé comme ainsi

$b = nouveau myBasket (« basketName ») ;    // vous pouvez courir plusieurs paniers, employez juste des noms uniques

$b->addItem ($productCode) ;  // ajoute 1 article

$b->addItem ($productCode2, 10) ;   // additionne une quantité de 10 pour productCode2


Pour montrer le panier

$items = $b->fetchAllItems () ;
$qty = $b->fetchAllQtys () ;

foreach ($items comme $index=> $aProductCode) {

     code produit d'écho le « $aProductCode a {$qty [$index]} des articles
« ;
}
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
17 :
18 :
19 :
20 :
21 :
22 :
23 :
24 :
25 :
26 :
27 :
28 :
29 :
30 :
31 :
32 :
33 :
34 :
35 :
36 :
37 :
38 :
39 :
40 :
41 :
42 :
43 :
44 :
45 :
46 :
47 :
48 :
49 :
50 :
51 :
52 :
53 :
54 :
55 :
56 :
57 :
58 :
59 :
60 :
61 :
62 :
63 :
64 :
65 :
66 :
67 :
68 :
69 :
70 :
71 :
72 :
73 :
74 :
75 :
76 :
77 :
78 :
79 :
80 :
81 :
82 :
83 :
84 :
85 :
86 :
87 :
88 :
89 :
90 :
91 :
92 :
93 :
94 :
95 :
96 :
97 :
98 :
99 :
100 :
101 :
102 :
103 :
104 :
105 :
106 :
107 :
108 :
109 :
110 :
111 :
112 :
113 :
114 :
115 :
116 :
117 :
118 :
119 :
120 :
121 :
122 :
123 :
124 :
125 :
126 :
127 :
128 :
129 :
130 :
131 :
132 :
133 :
134 :
135 :
136 :
137 :
138 :
139 :
140 :
141 :
142 :
143 :
144 :
145 :
146 :
147 :
148 :
149 :
150 :
151 :
152 :
153 :
154 :
155 :
156 :
157 :
158 :
159 :
160 :
161 :
162 :
163 :
164 :
165 :
166 :
167 :
168 :
169 :
170 :
171 :
172 :
173 :
174 :
175 :
176 :
177 :
178 :
179 :
180 :
181 :
182 :
183 :
184 :
185 :
186 :
187 :
188 :
189 :
190 :
191 :
192 :
193 :
194 :
195 :
196 :
197 :
198 :
199 :
200 :
201 :
202 :
203 :
204 :
sessName = $name. « _bskt » ;
          $this->sessQty  = $name. « _qty » ;

          $this->initialise () ;
     }





     // ----- Méthodes privées -------------------------------------------------


     Magasin de // la rangée courante dans une variable de session
     //
     updateBasket privé de fonction () {
          $_SESSION [$this->sessName] = fabriquent en série ($this->basket) ;
          $_SESSION [$this->sessQty]  = fabriquent en série ($this->qty) ;
     }



     // initialisent le panier
     //
     la fonction privée initialisent () {

          Contrôle de // si la session est en marche et si rechercher ainsi le panier existant
          //
          si (isset ($_SESSION [$this->sessName]) isset de && ($_SESSION [$this->sessQty])) {
               $this->basket = unserialize ($_SESSION [$this->sessName]) ;
               $this->qty    = unserialize ($_SESSION [$this->sessQty]) ;
          }
          autrement {
               $this->basket = rangée () ;
               $this->qty    = rangée () ;
               $this->updateBasket () ;
          }

     }



     // ----- Méthodes publiques --------------------------------------------------


     // vident le panier dehors
     //
     espace libre de fonction () {

          supprimé ($_SESSION [$this->sessName]) ;
          supprimé ($_SESSION [$this->sessQty]) ;
          $this->initialise () ;
     }



     // ajoutent un objet à la fin de la liste
     //
     Paramètres de // : $item - un objet à stocker
     //             $num - une quantité à stocker, défauts à 1
     //
     addItem de fonction ($item, $num=1) {
          // assurent le séjour d'index dans l'étape en recherchant le plus haut
          index existant de // et incrémentation de lui
          //
          $ctr = compte ($this->basket) ;

          si ($ctr > 0) {
               $lastKey = extrémité (array_keys ($this->qty));
               $ctr = $lastKey + 1 ;
          }

          $this->basket [$ctr] = $item ;
          $this->qty    [$ctr] = $num ;

          $this->updateBasket () ;
     }



     // enlèvent un article de la liste - identifier par le nombre de panier.
     la NOTE de // QUE L'ÉLIMINATION D'UN ARTICLE NE REMET PAS À ZÉRO LE PANIER NUMÉROTE dans les rangées.
     //
     Paramètres de // : $basketNumber - l'index de l'entrée de rangée à enlever de la rangée
     //
     rmvItem de fonction ($basketNumber) {

          si (compte ($this->basket) > 0) {

               Contrôle de // 001 qu'un article existe avant d'essayer son déplacement
               //
               si (isset ($this->basket [$basketNumber]  )) {
                    supprimé ($this->basket [$basketNumber]) ;
                    supprimé ($this->qty [$basketNumber]) ;
                    $this->updateBasket () ;
               }
          }
     }



     Effort de // un article
     //
     Paramètres de // : $basketNumber - l'index de l'entrée de rangée à rechercher de la rangée
     //
     fetchItem de fonction ($basketNumber) {
          si (compte ($this->basket) > 0) {
               $this->basket de retour [$basketNumber] ;
          }
     }



     Effort de // par quantité pour un article
     //
     Paramètres de // : $basketNumber - l'index de la quantité à rechercher de la rangée
     //
     fetchItemQuantity de fonction ($basketNumber) {
          si (compte ($this->qty) > 0) {
               $this->qty de retour [$basketNumber] ;
          }
     }


     Changement de // un article donné de la liste
     //
     Paramètres de // : $basketNumber - l'index de l'objet à la mise à jour
     //             $anItem - un objet
     //
     chgItem de fonction ($basketNumber, $anItem) {
          si (compte de && de >= 0 de $basketNumber ($this->basket) > 0) {
               Contrôle de // 001 qu'un article existe avant d'essayer son déplacement
               //
               si (isset ($this->basket [$basketNumber]  )) {
                    $this->basket [$basketNumber] = $anItem ;
                    $this->updateBasket () ;
               }
          }
     }



     Changement de // par quantité donnée d'articles de la liste
     //
     Paramètres de // : $basketNumber - l'index de l'objet à la mise à jour
     //             $qty - La nouvelle quantité
     //
     fonction chgQty ($basketNumber, $qty) {
          si (compte de && de >= 0 de $basketNumber ($this->qty) > 0) {

               Contrôle de // 001 qu'un article existe avant d'essayer son déplacement
               //
               si (isset ($this->basket [$basketNumber]  )) {
                    $this->qty [$basketNumber] = $qty ;
                    $this->updateBasket () ;
               }
          }
     }



     // obtiennent une liste de tous les articles dans le panier
     //
     fetchAllItems de fonction () {
          $this->basket de retour ;
     }



     // obtiennent une liste de toutes les quantités d'article stockées dans le panier
     //
     fetchAllQtys de fonction () {
          $this->qty de retour ;
     }



     // renvoie le compte du nombre d'articles dans le panier
     //
     countBasket de fonction () {
          array_sum de retour ($this->qty) ;
     }



} extrémité de // de myBasket de classe
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us