Artykuł pochodzi w serii przygotowań do egzaminu 70-562 ASP.NET. W dzisiejszym artykule zostanie zaprezentowane wiązanie danych w ASP .NET.Wprowadzenie do wiązania danych Wiązanie danych w ASP .NET może być klasyfikowane w proste, złożone bądź hierarchiczne kontrolki. Proste kontrolki są to takie, które dziedziczą z ListControl. Złożone są klasami dziedziczącymi z CompositeDataBoundControl, (takie jak GridView, DetailsView, FormsView itp). Hierarchiczne to kontrolki Menu oraz TreeView. .NET Framewor...
W ostatnich trzech artykułach z serii przygotowań do egzaminu 70-562 opisywane były sposoby pracy nad danymi przy wykorzystaniu ADO.NET. Klasy przedstawione w tych wpisach pokazywały jak programista może zrobić sobie za ich pomocą abstrakcyjną warstwę dostępu do danych. Jednak często, w szczególności przy prostych aplikacja www wykorzystywanie ADO.NET jest czasochłonne i nie wygodne. Na szczęście ASP.NET udostępnia zbiór kontrolek dostępu do danych, za pomocą których w sposób deklaratywnych można uzyskać...
Autor: Kolejny post ‘ku pamięci’, abym w przyszłości nie musiał tego szukać. Bawiłem się ostatnio przyciskiem, który ma pokazywać ContextMenu po naciśnięciu przycisku. Automatyczne pojawianie się ContextMenu po przyciśnięciu prawego przycisku działało bez problemu, tak więc nie spodziewałem się problemów z kodem poniżej....
Media Center i powieść detektywistyczna.
Czy wiesz, że strona dotnetomaniak.pl, może służyć ci jako Search provider w IE8?
Klasycznym sposobem mapowania DTO na obiekt biznesowy jest użycie wzorca projektowego adapter. Przykładowo aby zmapować Order do OrderDto możemy napisać następującą klasę:class OrderDtoAdapter { private Order mOrder =null; public OrderDtoAdapter(Order order) { mOrder = order; } publicvoid Initialize(Order orderDto) { orderDto.CreationDate = mOrder.CreationDate; orderDto.Client = mOrder.Client; orderDto.Id = m_Order.Id; } } Rozwiązanie całko...
Architektura 5340 dni, 19 godzin, 48 minut temu 82 źrodło rozwiń
Z tym typem mapowania miałem najwięcej bolączki - jest on naprawdę najgorszym z jakim przyszło mi pracować i głównie zastosowałem go tylko raz by sprawdzić czy się opłaca. Post ten więc raczej jest ku przestrodze a nie opisem sposobu mapowania obiektów.
Architektura 5341 dni, 13 godzin, 27 minut temu 35 źrodło rozwiń
Artykuł pochodzi w serii przygotowań do egzaminu 70-562 ASP.NET. Jak wiadomo .NET ma szeroko pojęte wsparcie dla XML. Implementacja XML to wydajność, niezawodności i skalowalność a w połączeniu z ADO.NET możliwość korzystania z XML jako źródła danych.Klasy XML Klasy XML są dostępne w System.Xml.dll czyli potrzebujemy dyrektywy using System.Xml. System.Data.dll rozszerza wspomnianą przestrzeń o chociażby klasę XmlDataDocument. Chciałbym teraz po krótce przyjrzeć się podstawowym klasom XML w .NET Framework...
Oryginalny post: The Rise and Fall of Homo LogicusAutor: Jeff Atwood Pośród całej apodyktycznej dumy, którą zaobserwowałem wśród programistów, prawdopodobnie największym grzechem ze wszystkich jest to, iż uważamy siebie za typowych użytkowników. Obsesyjnie używamy komputerów, wiele wiemy o tym jak one działają, nawet udzielamy rad przyjaciołom i rodzinie. Jesteśmy ekspertami. Któż mógłby lepiej zaprojektować oprogramowanie niż my? Większość programistów nie zdaje sobie sprawy z tego, jak bardzo odstaj...
Artykuł pochodzi w serii przygotowań do egzaminu 70-562 ASP.NET. Witam w dzisiejszym artykule, w którym mowa będzie o dostępie do danych za pomocą klas, które wymagają aktywnego połączenia.Używanie wbudowanych klas do operowania na danych Klasy, za pomocą których możemy dodawać, edytować, usuwać itd. dane dostarczone są razem z frameworkiem .NET. W sklad .NET’u wchodzą dostawcy do danych tacy jak: OleDb, Odbc, SQLServer, Oracl. Poniższa tabela pokazuję listę podstawowych klas w ADO .NET. W tabeli...
Natchnieniem do napisania tego artykułu były dla mnie doświadczenie ostatnich kilku lat mojej pracy i to że mówienie NIE przynosiło mi często więcej pożytku od mówienia tak. Ostatnio znalazłem też w sieci artykuł 10 Absolute “Nos!” for Freelancers który pokazuje że nie tylko ja miałem podobne problemy, a kluczem do ich rozwiązania jest asertywność.
Ten artykuł pochodzi z serii przygotowań do egzaminu 70-503: Windows Communication Foundation. Trochę po świętach mi sie przysnęło i dlatego artykuł pojawił sie dopiero o tej porze:) Znamy już podstawy konfigurowania “źródeł” i “słuchaczy” (jeśli chcemy stworzyć kilka źródeł dla jednego listenera to musimy użyć sekcji sharedListeners w pliku konfiguracyjnym – Kamil w poprzednim artykule to pominął, więc zainteresowanych odsyłamy do dokumentacji). Mamy informacje o przebiegu aplikacji. Jak teraz powiązać...
Programowanie rozproszone 5345 dni, 5 godzin, 19 minut temu 29 źrodło rozwiń
Zwykle aplikacja potrzebuje spójnego UI - czyli kontrolek wyglądających i zachowujących się wg. ustalonego schematu. W programowaniu web mamy style css, asp.net ma mechanizm Control Adapters, WPF z tego co wiem także pozwala dość mocno ustandaryzować ten aspekt. W Windows Forms komercyjne pakiety kontrolek, jak np. Telerik, udostępniają możliwość swego rodzaju stylowania wyglądu kontrolek danego typu.
Architektura 5345 dni, 5 godzin, 19 minut temu 116 źrodło rozwiń
Ten artykuł pochodzi z serii przygotowań do egzaminu 70-503: Windows Communication Foundation. Mechanizm śledzenia (ang. tracing), wykorzystaywany w WCF oparty jest o klasy, które możemy znaleźć w przestrzeni nazw System.Diagnostics. Zakładamy, że mamy pewną aplikację, która dostarcza informacje na swój temat, mamy też coś, co jest zainteresowane otrzymywanie informacji o tym, co aplikacja robi. To coś, co nasłuchuje to tak zwany listener, a może nim być aplikacja konsolowa, okienkowa, dziennik zdarzeń (...
Programowanie rozproszone 5345 dni, 7 godzin, 5 minut temu 53 źrodło rozwiń
W jakże wielu miejscach w sieci można natknąć się na dyskusje na ten temat... Co powinno być najważniejsze dla programisty? Czy opłaca się programować? Czy prawdziwy pasjonat powinien zwracać uwagę na coś tak przyziemnego jak wysokość wynagrodzenia? Czasami aż się dziwię skąd popularność tego tematu. Mimo to mi samemu również zdarzyło się wypowiadać w rzeczonej materii, postanowiłem więc w jakiś sposób swój pogląd na tą sprawę uporządkować.
Autor: Ostatnio mam trochę zaległości, więc i ten news już trochę opóźniony, ale jeśli ktoś jeszcze nie wie, to jakiś czas temu uruchomiony został nowy agregator blogów związanych z technologią .NET, a mianowicie: "dotNetNews.pl - nowości ze świata .net". Autorzy nowego portalu wiedzą, że istnieją podobne dostępne aplikacje, ale tą wyróżniać ma lepsze porządkowanie wiadomości pod względem czasu. Autor portalu w ramach wstępniaka pisze: "Brak uporządkowania pod względem dat powoduje, że osoba, która oder...
W dzisiejszym wpisie pojawi się pierwszy z trzech artykułów opisujących sposoby dostępu do danych. Na pierwszy ogień pójdą niewymagającego aktywnego połączenia z źródłem danych, następnie w środę pojawi się artykuł o klasach wykorzystujących aktywne połączenia, a na koniec w piątek pojawi się artykuł o pracy z plikami xml. Ale zanim przejdziemy to omawiania poszczególnych zagadnień z dzisiejszej lekcji, to napiszę jak w łatwy sposób sprawdzać sobie afekt naszych poczynań. Aby w łatwy sposób wyświetlić da...
W poprzednich postach przedstawiłem wzorce projektowe warstwy biznesowej: skrypt transakcji (transaction script), moduł tabeli (table module), aktywny rekord (active record) oraz model domeny (domain model). Napisałem, że dwa ostatnie wzorce posiadają bardzo rozdrobniony interfejs i nie nadają się bezpośrednio do użycia w rozproszonej aplikacji. Dla przypomnienia, AR oraz DM polegają na stworzeniu klasy dla każdej (lub prawie każdej w przypadku DM) tabeli w bazie danych. Przykładowo system sprzedaży posi...
Architektura 5345 dni, 11 godzin, 20 minut temu 81 źrodło rozwiń
Dzisiaj spróbujemy stworzyć pierwszy workflow. Co prawda, nic praktycznego nie będzie wykonywał, ale pokaże kilka mechanizmów, które można wykorzystać w workflow. Zasada działania przykładowego workflow wzorowana jest na przykładzie z MSDN:Jako parametr wejściowy podajemy liczbę całkowitą,Workflow sprawdza wartość liczby. Jeśli jest mniejsza niż 2000, kończy działanie wysyłając e-mail. W przeciwnym razie, wymagana jest akceptacja wprowadzonej wartości. Użytkownik musi po prostu wywołać pewnie zdarzenie –...
Autor: "Na początku przygody z Inversion of Control, a także dość długo później, moje wykorzystanie dostępnych kontenerów ograniczało się właściwie do ręcznego zarejestrowania wszystkich interfejsów, wszystkich interesujących mnie implementacji oraz zdefiniowaniu zależności w postaci parametrów konstruktora. Działało. Ostatnio korzystając z okazji postanowiłem podejść do problemu inaczej. Moim celem było zminimalizowanie czynności prowadzących do uzyskania żądanego efektu - "minimum friction development...
Architektura 5346 dni, 12 godzin, 36 minut temu 158 źrodło rozwiń