Article View: alt.pl.comp.lang.csharp
Article #517Re: DataSet i DataAdapter
From: Marek Janaszewski USUNTO. z adre...
Date: Fri, 20 Feb 2004 16:09
Date: Fri, 20 Feb 2004 16:09
64 lines
3488 bytes
3488 bytes
W artykule news:c128pt$4fo$1...@nemesis.news.tpi.pl, niejaki(a): Robert G z adresu <zof...@interia.pl> napisał(a): > Witam > Przeciez ja nie napisalem ze dataadapter przechowuje dane ?! Wydaje > mi sie ze dosc jasno wyjasnilem o co mi chodzi. Jesli nie to prosze o > inforamcje co jest nie jasne. [...] Witam! OK, już widzę o co Ci chodzi. To znaczy nie wiem z czego to wynika. Niepotrzebne się wychyliłem bo zmusiło mnie to do przyjrzenia się bliżej ADO.NET a działam na C# Builder Personal więc do pomocy nie ma kreatorów ułatwiających pracę. Ale jak się z tym uporałem do udało mi się podłączyć DataGrida do DataSet/DataAdapter aby przetestować wszystkie operacje. Sprawdzałem próbę podania powtarzającego się klucza głównego i mogłem go poprawić. Status rekordu można sprawdzić ale nie można go zmieniać. Jak się chcesz sam przekonać to podaje namiary metody/właściwości w dokumentacji .NET SDK: Przykład: DataRow currRow = dstKontrah.Tables["Kontrah"].Rows[grdKontrah.CurrentRowIndex]; ... currRow.RowState ...; Po prowadzeniu powtarzającego klucza mogłem go poprawić i nadal wywołać: daKontrah.Update(dstKontrah, tblNameKontrah); Być może problem polega, że nie zakończyłeś zmian dokonywany na DataSet. Jest coś takiego jak: currRow.EndEdit(); Poza tym jest: currRow.AcceptChanges(); Po wywołaniu tej metody, DataSet ustawia sobie stan rekordu na niezmodyfikowany i nie wysyła go do DataAdapter. Albo jest: currRow.RejectChanges(); I mamy poprzednią wersje rekordu. Ja akurat podłączałem się do bazy Accessowe więc korzystałem z przestrzeni nazw OleDb. Z dokumentacji wynika, że DataAdapterowi trzeba przygotować zapytania na wszystkie okazje i przekazać parametry do tych zapytań. Co by się zgadzało z tym co mówili goście w MSDN .NET Show. Należy zwrócić uwagę jaką wartość z DataSet przekazuje się przez parametry. Starą czy nową. Jest ustawienie do tego celu. Parametr następnie wiąże z polami DataSet, właściwość SourceColumn. Proszę powiedzieć czy moje badania pomogły w czymś. Myślę, że jest kilka namiarów, które można pogłębić w dokumentacji. P.S. Proszę pisać pod postem to znaczy pod poprzednią wiadomością i ciąć co niepotrzebne. Minimum sygnaturki. -- Pozdrawiam, Marek Janaszewski [ j_m...@gazeta.pl ]
Technical Details
Message-ID:
<c15bgf$2v8i$1@news.atman.pl>Path:
mbox-mo1.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!news.algonet.se!algonet!news.tele.dk!news.tele.dk!small.news.tele.dk!proxad.net!newsfeed.tpinternet.pl!news.atman.pl!not-for-mailReferences:
<c11v15$ir0$1@nemesis.news.tpi.pl> <c1288a$d6c$1@news.atman.pl> <c128pt$4fo$1@nemesis.news.tpi.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!news.algonet.se!algonet!news.tele.dk!news.tele.dk!small.news.tele.dk!proxad.net!newsfeed.tpinternet.pl!news.atman.pl!not-for-mail From: "Marek Janaszewski \(USUN_TO. z adresu!\)" <USUN_TO...@gazeta.pl> Newsgroups: alt.pl.comp.lang.csharp Subject: Re: DataSet i DataAdapter Date: Fri, 20 Feb 2004 17:09:23 +0100 Organization: ATMAN Lines: 65 Message-ID: <c15bgf$2v8i$1@news.atman.pl> References: <c11v15$ir0$1@nemesis.news.tpi.pl> <c1288a$d6c$1@news.atman.pl> <c128pt$4fo$1@nemesis.news.tpi.pl> NNTP-Posting-Host: staticline702.toya.net.pl Mime-Version: 1.0 X-Trace: news.atman.pl 1077293391 97554 217.113.228.127 (20 Feb 2004 16:09:51 GMT) X-Complaints-To: use...@atman.pl NNTP-Posting-Date: Fri, 20 Feb 2004 16:09:51 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit