Windows 8 eenvoudig: de toegang tot de gegevens opgeslagen

, Windows 8 eenvoudig: de toegang tot de gegevens opgeslagen,,,,,,,,,, 22, deel 2,,,,,,, de delen van het netwerk, maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen, een deel van de prijs van een serie van Windows 8 beknopt. Windows 8 beknopt: de kern conceptswindows telefoon 8 eenvoudig: de toegang tot de gegevens van het internet in het netwerk, de opslag, de mobiele toepassingen, speelt een belangrijke rol.De meeste ramen telefoon van toepassing kan worden gebruikt in een winkel voor aansluiting op het netwerk van een apparaat.Maar alleen op het internet is een vergissing, de gebruikers kunnen vinden van hun eigen omstandigheden, die niet beschikbaar is.Bovendien, de plannen zijn beperkt, dus we doen de exploitatie van het netwerk van minder mobiele telefoons, de ervaring van de gebruikers beter, het raam is een speciale manier om het opslaan van de gegevens bekend als "de geïsoleerde opslag".Het is als een gemeenschappelijk systeem, dus je kan het creëren van documenten en dossiers, zoals het op de harde schijf.Anders is de winkel is geïsoleerd, alleen je aanvraag kunnen gebruiken.Geen andere aanvragen om toegang te krijgen tot je opslag, de gebruiker ook niet gezien, toen ze de telefoon aangesloten op de computer.Bovendien, als een veilige geïsoleerde maatregelen, de opslag is de enige opslag van deze toepassing kan worden gebruikt.Je mag niet de toegang tot het systeem of de toepassing van het programma MAP MAP schrijven ontvangen., de opslag is een herhaling van de API biedt, op basis van de kenmerken van de oude precies betekent dat de ramen, de klasse en de nieuwe, op basis van de localfolder, klasse.In deze reeks heeft verwezen, moeten we ons richten op de ramen, en API - map. In de basis van de opslag, identificatie van MAP genaamd, storagefolder,.Zelfs de kern (worden gebruikt, de toegang tot een deel van de applicationdata.current.localstorage, klasse, windows.storage, Space) is een storagefolder, voorwerp, deze open, verschillende asynchrone methode met het huidige MAP, interactieve zoals:,,,, createfolderasync () in de weg aan het creëren van een nieuwe MAP.,, getfolderasync (), referentie van de huidige weg, mappen, getfoldersasync (). In de huidige weg, de lijst van de beschikbare documenten deleteasync ().,,,,, het schrappen van de map. Renameasync (), om de map.,, in de volgende voorbeelden, zie je hoe te komen tot een map in De wortel, ter plaatse opgeslagen:,, privé - asynchrone ongeldig oncreatefolderclicked (object afzender, RoutedEventE) de parameters {wacht op gegevens. Op dit moment, localfolder. Createfolderasync ("myfolder");}, helaas, de API - geen manier om te controleren of er al een map.De eenvoudigste manier om dat te doen is om gebruik te maken van getfolderasync (), MAP, en niet voor de verkeerde methode, die, als ze niet bestaan, zoals blijkt uit de volgende voorbeelden:,,, privé - asynchrone ongeldig onopenfileclicked (object afzender, routedeventargs e) {storagefolder map; proberen (MAP = wachten Op de gegevens die op dit moment getfolderasync localfolder. ('} myfolder "); de vangst (filenotfoundexception dus) {MAP = nul;} als (MAP = = nul) {naam vermeld (" dossier bestaat niet ");}}, dossiers, documenten, integendeel, het is een soort bepalen, opslag van documenten, het biedt ook een interactieve benaderingDocumenten:,,, deleteasync (), het schrappen van een dossier. Renameasync (),,,,, om de dossiers. Copyasync (), een kopie van een document van de ene naar de andere, moveasync ().,, een dossier van de ene naar de andere,, de operatie. Het document is het uitgangspunt dat storagefolder klas, we al eerder hebben besproken, omdat het voorziet in methoden voor het openen van een reeds bestaande documenten (, getfileasync ()) of het creëren van een nieuwe in de huidige MAP (, createfileasync ()), een onderzoek uitvoeren naar de meest voorkomende, laten we de twee soorten activiteiten: De inhoud van het dossier van een schrijven van de documenten en de inhoud van een lezing, te creëren. Een dossier, is, zoals al is gezegd, het creëren van een dossier met de eerste stap, createfile (), methoden, storagefolder, object.Het volgende voorbeeld toont aan hoe de oprichting van een nieuw document dat in het dossier, de opslag, de wortel:,,, privé - asynchrone ongeldig oncreatefileclicked (object afzender, routedeventargs e) opslag van documenten (= wacht op gegevens. Op dit moment, localfolder. Createfileasync ("documenten, creationcollisionoption.". Replaceexisting);}, je kan. Door middel van een facultatieve parameter, creationcollisionoption, methoden voor het bepalen van de voorwaarden voor het gebruik van het gedrag van een dossier met dezelfde naam hebben bestaan.In dit voorbeeld, de waarde, replaceexisting, is bestemd voor de dekking van de bestaande documenten. En nu heb je een dossier voor de opslag van documenten, en het doel is, mag je het gebruik van werkmethoden, openasync ().Deze methode is de stroom van de documenten, die je kunt gebruiken om te schrijven en lezen.,, het volgende voorbeeld toont aan hoe de in het dossier geschreven:,,, privé - asynchrone ongeldig oncreatefileclicked (object afzender, routedeventargs e) opslag van documenten (= wacht op gegevens. Op dit moment, localfolder. Createfileasync ("dossier.", creationcollisionoption. Replaceexisting); irandomaccessstream randomaccessstream = wachten op de papieren. Openasync (fileaccessmode. Lezen en schrijven); het gebruik van (datawriter schrijver = nieuwe datawriter (randomaccessstream. Getoutputstreamat (0)) {schrijver. Luister ("model tekst"); in afwachting van de schrijver. Storeasync ();}},, de sleutel is, datawriter dit is een klasse, de ramen loopt, makkelijk kunt schrijvenGegevens van het dossier.We moeten alleen het creëren van een nieuwe, datawriter, voorwerp als parameter voor ons, getouputstreamat () produktie - documenten, in de methode van de stroom terug, openasync (). De methode.,,, bieden veel datawriter schrijven voor, afhankelijk van de aard van de gegevens, zoals writedouble (), komma, writedatetime (), de datum en writebytes (,), van binaire gegevens.We schrijven het gebruik van in de steekproef, writestring (), methoden, dan gaan we bellen, storeasync () (), en, voor de voltooiing van flushasync schrijven.,,,,,,,,,,, verklaring kan worden gebruikt ter ondersteuning van de idisposable interface.Ze is meestal op slot middelen objecten, tot voltooiing van de operatie, net als de vorige voorbeelden.Tot de operatie af te schrijven, er is geen andere manier om toegang tot het dossier.We moeten ervoor zorgen dat in gebruik is, wanneer de transactie is voltooid - worden vrijgelaten, en hoe een dossier gelezen, en de documenten lezen is niet is niet hetzelfde.In dat geval, moeten we ook gebruiken, openfile (toegang tot documenten - methode).Het verschil is, in plaats van gebruik te maken van, datawriter, klasse, moeten we gebruik maken van gegevens lezer klasse, en dit is in strijd met de operatie.Kijk onder de code van het monster:,,, privé - asynchrone ongeldig onreadfileclicked (object afzender, routedeventargs e) opslag van documenten (= wacht op gegevens. Op dit moment, localfolder. Getfileasync ("documenten."); irandomaccessstream randomaccessstream = wachten op de papieren. Openasync (fileaccessmode. Lees); het gebruik van (gegevens lezer lezer = nieuwe gegevens lezer (randomaccessstream (0). Getinputstreamat)) (eenheid bytesloaded = voor de lezer. LoadAsync ((n) randomaccessstream. Grootte); reeks readstring = de lezer. Readstring (bytesloaded); de naam. Een (readstring);}}, en in dit geval, integendeel, createfileasync (). De methode die we gebruiken, getfileasync (). De methode kan worden gebruikt voor het verkrijgen van een referentie van een reeds bestaande documenten.Dan beginnen we lezen in het gebruik van procedures, gegevens lezer klasse, dit keer met de input - worden gebruikt, getinputstreamat (), methoden, zoals de klas.,,, datawriter gegevens lezer, bieden tal van methoden voor het lezen van de verschillende soorten gegevens, zoals readdatetime, readdouble () (),,,,,, readbytes ().In dit geval, zien wij ons voor het schrijven van het readstring (), de Franse tekst, dat vereist dat de omvang van de bestanden voor de parameters,,, een speciale map: installedlocation, plaatselijke opslag is, kunnen we ons schrijven de gegevens van de aanvragen, maar in sommige gevallen kunnen we nodig hebben ook in Onze documenten moet bestaan in het project, door de toepassing van de programma 's, de ramen loopt. Dat biedt een API voor toegang tot documenten van toepassing worden geïnstalleerd in alle documenten, je visuele studio een doelstelling een deel overgenomen.Dit is de zogenaamde verpakking. Op dit moment is, windows.applicationmodel installedlocation,,,,,, installedlocation deel namespace, type, storagefolder, als in de lokale opgeslagen dossiers, dus je kan met dezelfde methode, de werkzaamheden van de dossiers en documenten.Herinner je, je kan niet schrijven in de gegevens, maar alleen het lezen.,, in de volgende voorbeelden van de toepassing, we kopieën van documenten in het dossier naar de plaatselijke opslag, zodat we het verkrijgen van toegang tot particuliere schrijven.,,, asynchrone ongeldig oncopyfileclicked (object afzender, routedeventargs e) {opgeslagen dossiers wachten op het huidige pakket =.. installedlocation. Getfileasync ("documenten. XML"), wachten op de papieren. Copyasync (gegevens. Op dit moment, localfolder);},,, noot: in het proces van ontwikkeling, dan zou je zien dat je kunt aanvragen in de uitvoering van de map schrijven.Verwacht niet dat in het proces van identificatie, van toepassing is afgesloten, dus wanneer de aanvraag is verdeeld. De telefoon winkel, schrijven de toegang is ingetrokken, je begint te krijgen en een abnormale, beheer, ontwikkeling van een gemeenschappelijke in beweging in de scène nodig die is opgeslagen.Veel van de aanvragen om een bladzijde, kunnen de gebruikers op verschillende opties.,, zodat de ontwikkelaars van snelle voltooiing van de opdracht, met inbegrip van een soort SDK genaamd, isolatedstoragesettings, en voorziet in een woordenboek, applicationsettings, je kan het gebruiken om de opslag vastgesteld.,,,,,,,,, isolatedstoragesettings Is de opslag van bijen, oude; de ramen loopt die een nieuwe interface voor het beheer van de instellingen, maar, helaas, het is niet beschikbaar in Windows.,,,,, applicationsettings, eigendom is heel eenvoudig: het doel is de aard van het touw, woordenboek < >, en kan worden gebruikt voor de opslag van een object.,, in de volgende voorbeelden, zie je twee gebeurtenissen: ten eerste, het behoud van de procedures voor de behandeling van bij de vaststelling van een object, enTweede terughalen.,,, onsavesettingsclicked particuliere nietig (object afzender, routedeventargs e) {isolatedstoragesettings geregeld = isolatedstoragesettings.applicationsettings; geregeld. Toevoeging van (naam, "voorlopig"); het opzetten van. Save ();} particuliere nietig onreadsettingsclicked (object afzender, routedeventargs e) {isolatedstoragesettings geregeld = isolatedstoragesettings.applicationsettings; als (geregeld. (') met inbegrip van de naam ") {naam display ([naam]. Tostring ());}},, opmerkelijk is, Save (), daarvan, moet je elke keer dat je je telefoon aan de wijzigingen die zijn aangebracht.Trouwens, het is als een gewone, woordenboeken, verzamelen.,, de aandacht vestigen: in onder de motorkap, wordt opgeslagen in een XML - bestand.- zorg voor je automatisch redden object bijgehouden en bijgehouden.We zullen later worden bijgehouden, en dan in de winkel voor aanpassing van de opslag, de ontwikkelaars, een gemeenschappelijk verzoek kunnen zien welke documenten en dossiers in feite is opgeslagen.Aangezien de opslag is geïsoleerd, projectontwikkelaars niet eenvoudig zal de telefoon is verbonden met een computer en het onderzoeken. De controle van de toepassing van,, de opslag, de beste methode is het gebruik van een derde instrument op codeplex bekend als de ramen de energiebron van de telefoon van de instrumenten die beschikbaar zijn voor onderzoek, het is De toepassing van de plaatselijke opslag, instrumenten, visuele interface. Makkelijk te gebruiken.Als je die het je kan worden aangesloten op de apparatuur of een van de beschikbare simulator.Toen, in de geïsoleerde opslag ", zie je een geladen visie is van alle aanvragen de lijst van de studio.Iedereen zal door de toepassing van de id (dit is een gids).Als de documenten voor het beheer van de hulpbronnen, kan worden uitgebreid en de analyse van de inhoud van de structuur van de opslag van de boom.Je kunt het bewaren van documenten, van de apparatuur op je computer, reproductie van documenten aan de toepassing van de computer opgeslagen, zelfs het schrappen van het project.,,,,,, de opslag, de in het vorige hoofdstuk hebben wij over de fundamentele API voor de opslag van documenten en dossiers in je aanvragen.Op dit punt, dat we diep in de opslag van de gegevens van de toepassing van de beste manier om, dus het kan in verschillende toepassingen.,, bijgehouden en bijgehouden, bijgehouden, is opslag in de opslag van de gegevens van de toepassing van de meest eenvoudige methode.Het is een ingewikkeld onderwerp als de tekst zou kunnen worden opgeslagen, die in de tekst van het gebruik van XML - hola, of de produktie.- zo is het tegenovergestelde van de tekst veranderen tegen, zodat ze gebruik kunnen maken van de toepassing van het programma, het gebruik van deze technologieën in de ramen, telefoon, van toepassing is, elke keer zo typische toepassingen van de gegevens van de toepassing van de wijziging (wanneer een nieuwe alinea toegevoegd, bewerkt of schrapping) als is gebeurd, vermindering van het risico op verlies van gegevens, als een onverwachte instorten of opgehangen.- zo, integendeel, meestal gebruikt bij de toepassing van de inleiding van de procedure, voor de eerste keer. En zo is heel eenvoudig te gebruiken, maar het gebruik moet worden beperkt tot slechts enkele gegevens van toepassing is, want alles is bij de uitvoering van de in het geheugen.Bovendien, het meest geschikt is voor het geval de gegevens volgen, is simpel.Als je te veel, database is waarschijnlijk een betere oplossing, we praten hier later meer over artikel).,, in de volgende monsters, we gebruiken hetzelfde, mensen, we in deze reeks voor de klas.,,, categorie (openbare string naam {krijgen vaststelling van een reeks;}; een achternaam {}}; geregeld;,, laten we aannemen dat u een set, man, de vertegenwoordigers van de plaatselijke, je gegevens:,,, tabel < de nieuwe lijst van de = > < > - nieuwe {naam = ",", de naam = "Pagani"),De nieuwe mensen {naam = "John", "haar achternaam ="}};,, bijgehouden, bijgehouden gegevens van aanvragen, zullen we het gebruik van ter plaatse opgeslagen API - en wij weten dat in het vorige punt.We gebruiken, createfile (), methoden, zoals blijkt uit de volgende voorbeelden:,,, privé - asynchrone ongeldig onserializeclicked (object afzender, routedeventargs e) {DataContractSerializer bijgehouden programma = nieuwe DataContractSerializer (type (tabel < >)); de opslag van bestanden = wacht op gegevens. Op dit moment, localfolder createfileasync (". XML -"); irandomaccessstream randomaccessstream = wachten op de papieren. Openasync (fileaccessmode. Lezen en schrijven); het gebruik van (- = randomaccessstream. Asstreamforwrite () {') programma' s. WriteObject (-); wacht op de stroom. Flushasync ();}},,, DataContractSerializer, soort (ja, system.runtime.serialization een deel van de met het beheer van, een reeks)Proces.Als we de oprichting van een nieuwe zaak, we moeten een bepaald soort gegevens, zullen we een (in dit voorbeeld, de lijst < >,).Volgende, we in de opslag van en de toegang tot de gegevens van de stroom van het creëren van een nieuw document.De operatie is bijgehouden door een beroep te doen op, writeobject (), DataContractSerializer, klasse, de methode, die vereist dat de parameters van de positie van de gegevens en geschreven - object bijgehouden.In dit voorbeeld, IT 's van de verzameling van voorwerpen, die we' ve previously defined.,,, als je ze in de opslag. A: met behulp van de ramen, telefoon, met inbegrip van je 'll FIND A, en people.xml, dossier, die is een XML - vertegenwoordiging van je data:,,, ArrayOfPerson xmlns:i= "http://www.w3.org/2001/XMLSchema-instance <" xmlns= "http://schemas.datacontract.org/2004/07/Storage.Classes" > < Person> < Name> Matteo< /Name> < Surname> Pagani< /Surname> < /Person> < Person> < Name> John< /Name> < Surname> Doe< /Surname> < /Person> < /ArrayOfPerson>,,, de tip:,,,,, DataContractSerializer, klasse gebruikt als de output van XML - formaat.Als je wilt, maar je moet het gebruik van hola,,,,,, datacontractjsonserializer,  , op dezelfde manier werken.,,,,,, - zo - zo het proces zeer vergelijkbaar zijn, met inbegrip van opgeslagen API, nogmaals, lees het dossier van de inhoud en de DataContractSerializer klasse.De volgende voorbeelden laten zien hoe de bijgehouden gegevens bijgehouden tegen ons in het vorige hoofdstuk:,,, privé - asynchrone ongeldig ondeserializeclicked (object afzender, routedeventargs e) opslag van documenten (= wacht op gegevens. Op dit moment, localfolder. Getfileasync (". -"); DataContractSerializer bijgehouden programma = nieuwe DataContractSerializer (type (Tabel < de GT;)); irandomaccessstream randomaccessstream = wachten op de papieren. Openasync (fileaccessmode. Lees); het gebruik van (- = randomaccessstream. Asstreamforread ()) {lijst < > = bijgehouden programma. ReadObject (-) Lijst van mensen als < >}}, dat het enige verschil is:,, we krijgen een stroom gebruiken, asstreamforread (), de methode van het lezen, we gebruiken, readobject (),De methode van de anti - bijgehouden, DataContractSerializer, de inhoud van het dossier, het dossier - als input.Aandacht moet worden besteed aan de methode altijd een voorwerp is belangrijk, dus jullie verliezen altijd aan je ware aard van de gegevens (in een monster, we zullen het als een lijst < >,,), het gebruik van de databank: SQL CE,, als je de ontwikkeling van complexe toepassing, misschien moet je met complexe gegevens.Het beheer van de gegevensbank is een goede oplossing, omdat ze de relatie tussen steun, omdat de gegevens niet in het geheugen, maar van die goederen.,, SQL CE - database oplossingen, beschreven in de ramen telefoon 7,5.Dit is een onafhankelijke gegevensbank, hetgeen betekent dat de gegevens in het geheugen van een document zonder de noodzaak van een gegevensbank voor het beheer van de activiteiten van alle ramen telefoon gebruik.,, SQL CE 3,5 (op dit moment is de laatste versie 4, maar het is niet de steun), ter ondersteuning van de uitvoering van niet in vraag.Elke operatie is het gebruik van enkele tot Microsoft SQL, dit is een oplossing die de. Eerste.,,,, noot: - object in kaart te brengen. De oplossing kan automatisch worden tegen manipulatie (steek, bewerken, het schrappen van de bibliotheek) in de database.Dus, je kan het gebruik van een gerichte methoden om je project.Zorg voor te schrijven. De vereiste vraag uw gegevens zijn opgeslagen in de databank.,,,, door het gebruik van mobiele telefoons SQL CE ramen methode genoemd, de eerste code.De database is eerst tot de gegevens op basis van de entiteit, zal je in de tabel in de opslag.Een andere oplossing is, met inbegrip van een reeds bestaande SQL CE dossier in je studio 's.In dit geval zal je alleen in de Read - only - werk, hoe de definitie van databanken, de eerste stap is het creëren van je moeten worden opgeslagen in de databank van de entiteit.Elke entiteit zullen worden gekoppeld aan een specifieke tabel.,, entiteit wordt gedefinieerd als het gebruik van de eigenschap, dit is deel van een system.data.linq.mapping,,.Elke eigenschap is een eigenschap die zullen worden gebruikt om het om te zetten in een kolom.In het onderstaande voorbeeld aan te passen aan de mens ons bekend zijn, worden opgeslagen in een tabel:,,, (tabel. De lessen die {[kolom (isprimarykey = waar canbenull = vals, isdbgenerated = waar)] gemeenschappelijke reeks id (;;) in naam van de string [] {krijgen; [in] gemeenschappelijk akkoord;} {}) achternaam is geregeld, de entiteit,;; merken, tabel, eigendom, en elke eigenschap, kolom eigenschappen.Een van de kenmerken van de eigenschap kan aanpassen, zoals:,,, isprimarykey van toepassing is, een deel van de sleutel in isdbgenerated.,,, als in de kolom van de waarde van de invoeging van nieuwe regels moet elke auto die (bijvoorbeeld automatische verhoging), naam,., als die moeten worden toegewezen aan De in een andere dan de naam van eigendom. In het dossier,, de aard van de kolom, aanpassen.Bij verstek, van de kolom is door de aard van de goederen wordt automatisch. En met de database van de werkzaamheden:,, schrijven, is een bijzonder soort gedrag, zoals de databank en de toepassing van de tussenpersoon tussen.Het heeft alle middelen die nodig zijn voor de tenuitvoerlegging van een van de meest voorkomende activiteiten, zoals opgenomen in de actualisering en schrappen,.,,, klasse, van de klasse die in verband met de definitie van een (d.w.z. de weg is opgeslagen in een databank) en alle tabellen zijn opgenomen in een databank.In de volgende voorbeelden, zoals je kan zien, de definities, met inbegrip van,, we de eerder omschreven:,,, in de loop van de databasecontext:DataContext (statische verband. = "Bron: gegevens isostore:/. Zelfverdediging"; de openbare databasecontext (in verband met de string): basis (connectionstring) {}) en openbare LT; mensen >;}, een afzonderlijk programma van de erfenis, klasse, klasse.Het zal de tenuitvoerlegging van de steun in verband met een reeks parameters als input van de fabrikant.Zijn er twee verband vormen, gebaseerd op het volgende voor:,,, isostore:/, betekent dat de opslag van documenten in de opslag.In dit voorbeeld, de naam van de database, persons.sdf, opgeslagen in het geheugen van de wortels van het AppData:/.,,, betekent dat de documenten in de studio in plaats van opslag van het project.In dit geval moet je dossier - eigenschap, Read - only -,,,, openbare statische verband. = = AppData gegevens Bron: /persons.sdf; stand van het dossier voor de Read - only "; en, tot slot, kun je de database toevoegen, encryptie, eigenschap die string:,,, in verband met De statische string =" Bron: gegevens isostore:/persons.sdf; code ='password ";,, de oprichting van een databank, als de gegevens nodig zijn, je moet het opzetten van een databank, als hij nog niet bestaat.Daarom moet de klasse van twee methoden:,,,, databaseexists (), terug naar de database, en of er sprake is van createdatabase, (), daadwerkelijk tot de database.,, in de volgende voorbeelden, zie je een typische database bij het starten van de inleiding van de procedure: de uitvoering van elke toepassing van,,, - nietig oncreatedatabaseclicked (object afzender, routedeventargs e) het gebruik van {(databasecontext dB = nieuwe databasecontext (databasecontext. Connectionstring)) {als.DB. Databaseexists () {}}} decibel. Createdatabase ();,, met de gegevens, werken, alle operaties gebruikt, tabel < T > doel van de verklaring is, ons in de definitie.Ter ondersteuning van de operatie het criterium onder, dus je kan vragen van de methoden voor het gebruik van de gegevens, waar firstordefault () (),,, te selecteren ('), orderby (),,,,,,, in het volgende voorbeeld, dan kun je zien hoe we zoeken alle mensen, in De tabel, de naam is Matteo:,,, onshowclicked (particuliere nietig object afzender, routedeventargs e) het gebruik van {(databasecontext dB = nieuwe databasecontext (databasecontext. Connectionstring)) {lijst < > = dB. In (x = > x = = = = = = = de naam "voorlopig"). Tolist (});}, de resultaten terug van niet alleen kan worden gebruikt, en voor dat doel, maar ook voor de montage.De projecten in de gegevensbank, je kan dit doen door de, submitchanges () tot wijziging van de waarde van het voorwerp van de methode van de terugkeer, de klasse, blootstelling,,, om een nieuwe vermelding toegevoegd aan de tabel van < T >, voorziet in twee methoden, insertonsubmit () (),,, insertallonsubmit.De eerste methode kan worden gebruikt voor de invoeging van een enkel object, maar twee en een aantal operationele projecten (op het feit dat het aanvaarden van een verzameling als de parameters).,,, onaddclicked particuliere nietig (object afzender, routedeventargs e) het gebruik van {(databasecontext dB = nieuwe databasecontext (databasecontext. Connectionstring)) {iedereen = {naam, achternaam = = "," "Pagani"}; dB. Insertonsubmit (mannen); dB. Submitchanges ();}}, mag ik uw aandacht, alstublieft, submitchanges (). De methode: elke keer als je zegt dat het belangrijk is de wijziging van de lijst van door Toevoeging van nieuwe projecten (of bewerken of schrapping van een de reeds bestaande), of, in de verandering niet gered worden.Op dezelfde manier, je kan gebruiken, deleteonsubmit (), het schrappen van punten, deleteallonsubmit (). De methode is.In het onderstaande voorbeeld, we verwijderen alle namen:,,, Matteo particuliere nietig ondeleteclicked (object afzender, routedeventargs e) het gebruik van {(databasecontext dB = nieuwe databasecontext (databasecontext. Connectionstring)) {lijst < > = dB. In (x = > X. = = = = = = = de naam ","). Tolist (); dB. Mensen. Deleteallonsubmit (man); dB. Submitchanges ();}},,,, in het vorige hoofdstuk hebben we het over is opgeslagen in een van de gegevens in de tabel.En nu is het tijd om de relatie tussen een, dit is tussen twee of meer voor een tafel.Als voorbeeld, zullen we nog een nieuwe entiteit, in orde, onze database redden, kunnen we gebruik maken van de opslag, de tabel van de orders van individuele gebruikers, onder dat gebruikt kan worden om SQL:,, de toevoeging van een, mensen, eigendom, de openbare orde, de entiteit, de opslag van een verwijzing naar de gebruikers een bevel. De toevoeging van orders, verzamelde, personen, entiteiten omvat alle commando 's door de gebruikers.,, dit is door het gebruik van een, de sleutel, dat is een goede eigenschap in een beschikking vast te stellen, moet de entiteit, die de gebruikers een bevel van de sleutel van De waarde.  ,, hier is hoe het is, om:,,, (tabel. De klas {[kolom (isprimarykey = waar de eigenschappen van een ordercode)]} {[kolom;;De dubbele prijs (n]} [in]; een string shippingaddress {}; de een zijn geregeld; de openbare int; PersonId (}; de regeling; de particuliere entityref < > _person; [Association (naam "personorders", "_person", dat "ding", de opslag van = = de andere is dat "ding", isforeignkey = waar de mensen krijgen)] {} {terug. _person.entity; vastgesteld (previousvalue = het mensen. _person.entity; als (((previousvalue!= de waarde van



Previous:
Next Page: