Przechowywanie obiektów w sesji nie jest ogólnie wskazane ze względu na szybkość działania strony (poza typem InProc) jak i ulotność miejsca składowania (InProc). Mimo wszystko czasami trzeba. Aby ułatwić sobie pracę z obiektem sesji napisałem kilka pomocniczych metod rozszerzających możliwości HttpSessionStateBase. Bardzo często zdarzają się przypadki przechowania czegoś na chwilę w kontekści...
Strona głównaUżytkownik
Paweł Łukasik | użytkownik
Niejednokrotnie pisałem o SVN, zachwycając się cudownością tego narzędzia. Wpłynęło ono na moje życie zawodowe dość znacząco - tak naprawdę od niego zacząłem przygodę z kontrolą wersji. A kontrola wersji całkowicie zmienia sposób pracy, o czym przekonał się każdy kto zaczął korzystać z jakiegokolwiek systemu z tej rodziny (wtrącenie: jeśli czyta to ktoś ignorujący te systemy, niechaj natychmiast się nawróci! to nie jest trudne, a naprawdę niezbędne!). Subversion było też (albo jest nadal) standardem w te...
Chciałbym nawiązać tą notką do mojej pierwszej notki z tego bloga. Była to analiza dostępnych technik odwracania zależności w kontekście aplikacji o tzw. architekturze cebulowej. Od tego czasu moje poglądy na ten temat nieco się zmieniły, stąd nagląca potrzeba aktualizacji. Dlaczego w ogóle zajmuję się tym tematem? Wujek Bob, w jednej ze swoich ostatnich notek, poruszył problem uzależnienia od technicznych aspektów ...
Architektura 5423 dni, 15 godzin, 50 minut temu 149 źrodło rozwiń
Ostatnim razem ponarzekałem trochę na SVN i scentralizowany model systemów kontroli wersji. Jedną z wspomnianych alternatyw, realizującą model rozproszony, jest Git - i o nim dzisiaj kilka słów. Nie zamierzam pisać tutoriala dla Git czy nawet omawiać zasad jego działania. Zamiast tego zbiorę i zaprezentuję garść linków, które warto odwiedzić chcąc zająć się Gitem na poważne. Muszę ostrzec, że zabawa ta nie jest banalna - i nie zawsze przyjemna. Ja korzystam z Gita od ponad pół roku, a mimo to jeszcze do...
Przy pisaniu kilku ostatnich stron WWW potrzebowałem dość często tworzenia elementów HTML na podstawie konkretnego źródła danych - coś co zwykle załatwia ASP:Repeater czy ASP:ListView (i jeszcze kilka innych kontrolek serwerowych). Problem polegał jednak na tym, że naprawdę nie chciałem zaprzęgać do tego wszystkiego ASP.NET, mogę większość rzeczy zrobić w JavaScript to po co mi do tego code behind?
Od kiedy Maciej Zbrzezny 19 lipca 2009 opublikował post grupujący blogi .NET wiele się zmieniło. Doszły nowe blogi, część nie została wymieniona a część wymarła śmiercią naturalną lub zmieniła swój adres zamieszkania. Przez ten okres większość z nas korzystała albo z linków na starym CodeGuru (aktualnie ich brakuje ) albo korzystała z takich portali jak Dotnetomaniak czy Develway by poznać nowy blog lub zapoznać się z ciekawym postem. Brakowało miejsca w którym nie tylko wszystkie blogi by były zgrupow...
Witam z powrotem w szóstym odcinku serii Ekstremalna przeróbka ASP.NET. W poprzednich artykułach skupialiśmy się na technologiach związanych z przeglądarką po stronie klienta: XHTML, CSS, JavaScript, jQuery i jQuery UI. Kilka następnych artykułów w tej serii będzie się skupiać na kodzie po stronie serwera. Jak możemy zmodyfikować nasz kod C#, aby poprawić możliwości utrzymywania i rozszerzania naszej bazy kodu oraz jej elastyczność. Ten artykuł, część 6, skupi się w szczególności na podziale obowiązków. ...
Jakiś czas temu natknąłem się na problem podczas pracy z PropertyGrid'em. Aby móc edytować obiekty przy pomocy PrpopertyGrid'a należy nadawać odpowiednim właściwością klasy (której obiekty chcemy edytować) atrybuty. Jednak ja dodatkowo potrzebowałem, by edytor danego obiektu zmieniał się w czasie działania aplikacji, pojawiło się więc pytanie: "Jak zmienić (w c#, .NET) wartość atrybutu klasy, funkcji, właściwości podczas działania aplikacji z poziomu kodu programu?"
Autor: W ramach przygotowań do egzaminu 70-562: TS: Microsoft .NET Framework 3.5, ASP.NET Application Development, chciałbym zaprosić do lektury na temat zagadnienia p.t. "Dostosowanie i Personalizacja Aplikacji Web" ("Customizing and Personalizing a Web Application"). Opracowanie zostało podzielone na nastepujące części:Strony Wzorcowe (Master Pages) - teoriaStrony Wzoorcowe - przykładTematy, motywy (Themes) - teoriaTematy, motywy - przykładWeb Parts - teoriaWeb Parts - przykład Dodatkowo zachęcam do ob...
Ostatnio w jednym z projektów, w których brałem udział dostawałem w niektórych miejscach kolekcję obiektów zaś w innych, parametrami metody były same obiekty. Potrzebowałem, więc czegoś generycznego by móc je sobie konwertować. W tym celu szybko naskrobałem extension method...
Joel Spolsky wczoraj opublikował na łamach gazety Inc. przyszły (bo z datą 1 lutego ;)) artykuł na temat problemów przepełnienia kanałów komunikacji. W artykule głównie porusza obserwacje z wyśmienitej książki Mityczny osobomiesiąc autorstwa Frederick P. Brooks i już w merlinie i wydawnictwie WNT nie dostępnej (ale na Amazon tak, za $26,02) - osobiście gorąco polecam tą książkę każdemu programiście i nie tylko...
Metoda UpdateModel jest metodą dostępną w klasie kontrolera, która w automagiczny sposób przepisze wartości przesłane z formularza do naszego obiektu modelu. Niestety przepisze wszystkie jakie tylko zostały przesłane. A co jeśli nie chcemy przepisywać wszystkich? Wystarczy podać listę dopuszczonych wartości do przepisywania. Niestety lista ta to nic innego jak array stringów. Poniżej prezentuję kawałek kodu, który ...
Standardowe komunikaty w bibliotece NHibernate.Validator nie są zbyt przyjazne dla użytkownika. Można dostosować je do własnych potrzeb poprzez pliki zasobów.
Testowanie kodu wielowątkowego jest nie lada wyzwaniem. Teoretycznie powinno się tego unikać, ale czasami nie ma innego wyjścia. Co robić w sytuacji, gdy w komponencie tworzonym podczas naszego testu uruchamiany jest nowy wątek, a w nim wyskakuje wyjątek? Test oczywiście nie przechodzi, ale wcale niekoniecznie musimy wiedzieć dlaczego tak a nie inaczej się stało. Kiedyś pół godziny straciłem na wgapianie się w monitor zanim wpadłem na to, że w wątku pobocznym wyskakuje wyjątek. Bo jak wiadomo, wyjątek rz...
Postanowiłem spisać technologie, biblioteki, które używam w pracy z projektami ASP.NET MVC, ewentualnie “nowinki”, które zostały przetestowane w boju, ale ze względu na silną obsadę czekają na lepsze czasy i napewdno niedługo zostaną przeze mnie ponownie użyte. Oto one, zaczynająć od "pierwszego składu": ArchitekturaS#arp Architecture: podstawowy stack, który zawiera w sobie wszystko to, co potrzebne jest do stworzenia aplikacji ASP.NET MVC. Korzysta z Castle.Windsor co podmieniam na Ninject.NHibernate,...
Jednym z największych problemów w aplikacjach internetowych jest podwójne przesłanie danych za pomocą metody POST na szczęście prawidłowo korzystając z mechanizmów ASP.NET MVC można się przed tym obronić – ale o tym za chwilę. Na początek krótkie wyjaśnienie tego w czy cały problem.
Pewnie część z Was zdaje sobie z tego sprawę, ale dla mnie było to ciekawe odkrycie. Firma ThoughtWorks publikuje corocznie raport dotyczący technologii, praktyk i metodyk związanych z IT. Raport ten ma formę "radaru" — koła podzielonego na 4 pierścienie. Idąc od zewnątrz są to: hold (obserwować z daleka), asses (przyjrzeć się bliżej), trial (przetestować) oraz adopt (wdrożyć). Czytając "radar" można dowiedzieć się wielu ciekawych rzeczy lub podłechtać swoją dumę, jeśli przewidywania "...
Ewolucyjne podejście do schematu baz danych Ten post chciałem napisać od czasu, gdy sprzedałem zawarty w nim pomysł Michałowi na jednym ze spotkań PG.NET w końcu się udało Jeśli myślisz, że raz stworzysz schemat bazy danych dla swojej aplikacji i już nigdy go nie będziesz zmieniać to jesteś w błędzie. W czasie produkcji może się okazać, że coś zostało pominięte, coś można rozwiązać lepiej, jest błąd albo po prostu trzeba dodać nową funkcjonalność wymagającą zmian w schemacie.
Bazy danych i XML 5451 dni, 17 godzin, 29 minut temu 138 źrodło rozwiń
Rozróżnia się dwie możliwości klonowania obiektów:shallow copy – tzw. płytka kopia. Najczęściej wykonywana przy użyciu metody MemberwiseClone z klasy Object.deep copy – tzw. głęboka, pełna kopia. Przyjrzymy się jednej z możliwości jej realizacji – wykorzystania serializacji do strumienia w pamięci.
Prawdopodobnie wielu z Was zna bądź słyszało już o społeczności StackOverflow, której wspólnymi siłami, w bardzo krótkim czasie, udało się stworzyć jedną z najciekawszych i najprzydatniejszych stron typu Q&A (pytania i odpowiedzi). Dzięki uprzejmości twórców tego serwisu, mamy przyjemność zaprezentować Wam jego polską wersję — devPytania. Ogólną ideę przyświecającą temu przedsięwzięciu najlepiej chyba przedstawił Jeff Atwood (jeden z tworców SO): StackOverflow najłatwiej chyba zdefiniować jako prze...