Article View: alt.pl.comp.lang.csharp
Article #520Re: c# i msde
From: Marek Janaszewski USUNTO. z adre...
Date: Fri, 20 Feb 2004 00:04
Date: Fri, 20 Feb 2004 00:04
41 lines
3035 bytes
3035 bytes
W artykule news:c13ch9$ef8$1...@srv.cyf-kr.edu.pl, niejaki(a): Michał z adresu <NONONOSP...@poczta.onet.pl> napisał(a): [...] > 1. W jaki sposób można odebrać komunikat od bazy danych ( w interbase > robiłem to triggerami poprzez post_message ) że np. został do danej > tabeli dodany rekord na innym stanowisku. Chodzi o to aby > automatycznie odświeżyć zawartość datagridów u klientów jeżeli na > jednym z nich tabela zostanie zmodyfikowana. ( próbowałem coś przez > InfoMessage z SQLServerConnection, ale nie wyszło :( ) > > 2. Proszę o jakieś przykłady jak rowiązujecie blokowanie rekordów w > tabeli w SQL Server, tak aby gdy rekord jest modyfikowany na innym > stanowisku, nie wpuścić do niego innego użytkownika. > ( w interbase używałem update dla danego rekordu ) [...] Witam! Niestety nie znam odpowiedzi na tak szczegółowe pytania odpowiedzi, także jestem początkujący w C#. Natomiast mogę ostrzec, że może być ciężka bo .NET jest mocno nastawione na optymistyczny model blokowania oraz prace w trybie bezpołączeniowym (modelu aktuwkowym). Ogląda prezentacje w .NET Show i przerabiałem mały przykład z Borlanda i sprawa została wymyślona tak przez Microsoft, że na czas pracy na nich dane są ładowane do DataSet. Połączenie może być zamknięte. Dopiero na wyraźne polecenie zmiany są utrwalane. Co ciekawe DataSet może zawierać w sobie wiele tablic danych (relacji). Tak więc wydaje się, że w tym scenariusza bardziej się konflikty rozwiązuje a nie jak Ty stosujesz im zapobieganie. Czyli praca użytkownika na najświeższych danych, blokada rekordu. Tu spodziewał bym się jakiś mechanizmów rozwiązania tych problemów w czasie wprowadzania zmian do bazy. Np. czy użytkownik zmieniając rekord albo pole posiadał aktualne dane. Mam nadziej, że moje wywody nie zniechęcą innych do bardziej konstruktywnej odpowiedzi. Bo uznają, że pytanie jest załatwione. Bo już lepiej było by zamilczeć i czytać. -- Pozdrawiam, Marek Janaszewski [ j_m...@gazeta.pl ]
Technical Details
Message-ID:
<c13mci$2hih$2@news.atman.pl>Path:
mbox-mo1.pugleaf.net!archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.gamma.ru!Gamma.RU!news.man.poznan.pl!newsfeed.gazeta.pl!news.atman.pl!not-for-mailReferences:
<c13ch9$ef8$1@srv.cyf-kr.edu.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.gamma.ru!Gamma.RU!news.man.poznan.pl!newsfeed.gazeta.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: c# i msde Date: Fri, 20 Feb 2004 01:04:42 +0100 Organization: ATMAN Lines: 42 Message-ID: <c13mci$2hih$2@news.atman.pl> References: <c13ch9$ef8$1@srv.cyf-kr.edu.pl> NNTP-Posting-Host: staticline702.toya.net.pl Mime-Version: 1.0 X-Trace: news.atman.pl 1077238994 83537 217.113.228.127 (20 Feb 2004 01:03:14 GMT) X-Complaints-To: use...@atman.pl NNTP-Posting-Date: Fri, 20 Feb 2004 01:03:14 +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