Jedną z tych rzeczy, którą musi znać każdy programista ASP.NET jest zarządzanie stanem. Na pierwszy ogień na moim blogu proponuję tematykę Cookies, czyli popularnych ciasteczek. O ciasteczkach chyba każdy posiada jakąś wiedzę, ale zawsze warto pewne informacje usystematyzować, stąd pomysł na niniejszego posta. Ciasteczko to pewna niewielka porcja tekstu, która jest dołączana do żądań i stron wędrujących pomiędzy serwerem i przegl...
Podczas stosowania Agile niezbędnym jest podział kolejnych funkcjonalności klienta na zadania (tasks), które przydzielane są następnie kolejnym członkom zespołu programistycznego. Funkcjonalności dzielimy na zadania na początku każdej iteracji - dzielimy tylko te funkcjonalności które mają być w danym okresie czasu zaimplementowane...
Sprawy związane z SEO są aktualnie jednymi z najważniejszych kwestii na które należy zwrócić uwagę podczas tworzenia strony internetowej. Czym byłby sklep internetowy, gdyby użytkownicy nie mogli odnaleźć go za pomocą popularnych wyszukiwarek? Odpowiedź jest chyba oczywista…
Prosty aczkolwiek nieoczywisty problem z działaniem SharePoint Designera 2007. Tak jak napisałem w tytule SharePoint Designer 2007 w środowisku Windows Server 2008 R2 X64 nie działa. W każdym razie w moim wypadku przy każdej próbie uruchomienia aplikacji następował natychmiastowy crash aplikacji. Nie dawała tutaj rady żadna próba uruchomienia w trybie safe mode, nie pomogła również instalacja Service Packa 2 dla SP. Niestety w sieci znajduje się całkie...
Kilka dni temu ostrzegaliśmy przed atakiem na webaplikacje pisane w ASP.NET. Dziś znamy już szczegóły błędu, a Microsoft potwierdził zagrożenie. Poniżej prezentujemy jak zabezpieczyć się przed atakiem.Atak na ASP.NET (demonstracja) Błąd, tak jak pisaliśmy kilka dni temu, korzysta z tzw. wyroczni, czyli polega na wysyłaniu zaszyfrowanych zapytań do serwera i wyłapywaniu różnic w jego odpowiedziach — różne kody błędów świadczą o tym, czy serwer poprawnie rozszyfrował wiadomość. Na tej podstawie można wycią...
autor: To co napisałem poniżej to narazie koncept, który w sumie już działa, ale wymaga jeszcze nieco szlifu. Potrzebowałem skomunikować ze sobą dwie aplikacje webowe oparte o MVC. Naczytałem się o WCF i innych sposobach komunikacji poprzez Webservice i zawsze oznaczało to sporej ilości dłubania. Zresztą jak dobrze poszukać to znajdą się opinie, że budowanie osobn...
Microsoft udostępnił narzędzie Web Application Configuration Analyzer (WACA), które skanuje serwer hostujący aplikacje biznesowe w oparciu o zestaw najlepszych praktyk zalecanych dla ustawień IIS , ASP.NET i SQL Server.
Małe odejście od PivotViewer, poniżej mamy prosty kod (wystarczy go wkleić do aplikacji konsolowej by się uruchomił). Chciałbym wypisać (to jest ważne, nie chcę widzieć tego w UI, chcę to wypisać sobie) wszystkie operacje boxingu i unboxingu znajdujące się w tym kodzie (może to być to numer linii i typ operacji, lub sam typ operacji plus informacja w którym miejscu to następuje).
Architektura 5203 dni, 7 godzin, 41 minut temu 69 źrodło rozwiń
Niniejszym postem rozpoczynam cykl publikacji o zastosowaniu F# i związanych z nim narzędzi do tworzenia interpretera na przykładzie imlementacji V+, który wykorzystywany jest do programowania wirtualnego robota w środowisku RLab.
W tej notce przedstawię kilka przydatnych skrótów klawiszowych, który używam codziennie (lub prawie codziennie ;)) podczas pracy z Visual Studio.CTRL + E, D – formatowanie kodu w aktywnym pliku,CTRL + SPACEBAR - wywołanie IntelliSense,CTRL + E, C - komentowanie zaznaczonych linii kodu,CTRL + E, U - odkomentowanie zaznaczonych linii kodu,CTRL + SHIFT + L - kasowanie zaznaczonych linii kodu,CTRL + M, O – zwinięc...
Drugi odcinek serii (przypominam, że na początku był odcinek 0.). Minęła pierwsza iteracja, zakończona całkiem nie małym sukcesem, bo zdążyliśmy zaimplementować wszystkie zaplanowane funkcjonalności, jednocześnie skupiając się bardziej na jakości niż na szybkości prac. A więc jakie zmiany zaszły w naszym projekcie? Przede wszystkim rozrósł się znacznie, zyskał wiele funkcjonalności, a to pociągnęło za sobą konieczność pewnych zmian i udoskonaleń w architekturze. Przypomnę, że nasza solucja jest aktualnie...
Architektura 5204 dni, 9 godzin, 34 minuty temu 64 źrodło rozwiń
Microsoft przyznał w końcu, że aplikacje webowe stworzone przy pomocy praktycznie dowolnej wersji środowiska ASP.NET są podatne na atak typu Padding Oracle. Oznacza to, że w zależności od konkretnej aplikacji, intruzowi może udać się przykładowo uzyskanie dostępu do zawartości zaszyfrowanych ciasteczek i innych danych sesyjnych. Około 25% wszystkich aplikacji webowych bazuje na ASP.NET, w związku z...
Ludzie branche tworzą… Motywów do tworzenia gałęzi w projektach jest co nie miara. W nie tak prehistorycznych czasach (które chyba z resztą trwają do dziś) królowania CVS, a później SVN większość rzeczy trafiała bezpośrednio do trunka – głównej gałęzi. Rozgałęzienia były tworzone w momentach, gdy projekt rzeczywiście obierał dwa, dosyć odmienne biegi rozwoju (np. v1 i v2 – obie rozwijane). Inną strategią (nie wykluczającą pierwszej!) było tworzenie gałęzi – stabilnej, rozwojowej, a czasem eksperymentalne...
Korzystanie z interfejsu INotifyPropertyChanged podczas pracy z WPF to praktycznie codzienność. Za którymś razem jednak implementacja tego interfejsu w kolejnej klasie może już zbrzydnąć. Dlaczego, więc nie skorzystać z refleksji i extensions methods? Metodę wywołującą zdarzenie PropertyChanged napiszemy raz i będziemy z niej korzystać do woli. Implementacja tej metody w moim wykonaniu wyglą...
Dzisiaj coś zupełnie z innej beczki. SAP Business One (SB1) , czyli "program księgowy". Jakiś czas temu miałem okazję popracować trochę z tym programem i zapoznać się z DI API. DI API to zestaw metod, za pomocą których możemy zautomatyzować proces tworzenia dokumentów księgowych w SB1. Czyli wygenerować dokumenty z poziomu własnego programu, przy użyciu "odpowiednich bibliotek". Bardzo przydatne w sytuacji gdy integrujemy program księgowy z innymi systemami i chcemy zautomatyzować proces powstawania doku...
Standardowo gdy tworzymy projekt typu Class library, Visual Studio pozwala nam na dodanie elementów WinForm i dosłownie jednego (User Control) elementu z palety WPF. Oczywiście dla bibliotek z elementami WPF przeznaczony jest projekt WPF Custom Cortol Library, ale czasem istnieje konieczność dodania kontrolek WPF'owych do istniejącej biblioteki i właśnie taki przypadek zostanie tutaj rozpatrzony.
Dzisiaj nieco o tym, jak można sobie chociaż kapkę życie ułatwić. O ile z reguły przy dropdownlistach wyświetlamy jakieś konkretne wartości pobrane z bazy tworząc odpowiednią SelectList, o tyle z enumami z reguły nie chcemy wyświetlać bezpośrednio jego nazwy w boxie, na przykład ze względu na to, że nasza nazwa (nam tłumacząca wszystko) nic odbiorcy stronki nie powie. Rozwiązaniem przez nas stosowanym jest generowanie listy na podstawie atrybutów enumów. Więc jedziemy: Atrybut DisplayName jest tu bardzo ...
Instalacja MVVM Light Toolkit Właściwie jedyne co jest niezbędne do pracy z MVVM LT, to same biblioteki w formie plików DLL, jednak aby naprawdę wygodnie korzystać z tego narzędzia dobrze jest skorzystać z małych wspomagaczy przygotowanych przez autora. Pobieramy paczkę stąd i następnie wypakowujemy to co nam potrzeba. Jest tego całkiem sporo, ponieważ przygotowane są wersje zależne od wykorzystywanej technologii i oprogramowania: binarki - biblioteki w postaci plików DLL w postaciach przygotowanych dla...
Architektura 5204 dni, 9 godzin, 34 minuty temu 417 źrodło rozwiń
Dziś chciałbym pokazać rozwiązanie problemu związanego ze sposobem przechowywania podstawowych informacji o forum np, nazwa, słowa kluczowe.
Prawdopodobnie wszyscy znają już klauzulę group by w zapytaniach SQL – nie stanowi żadnej rewelacji. Myślę jednak, że znacznie mniej popularniejszą klauzulą jest GROUPING SETS. Rozważmy następujące zapytanie: selectfrom Products GROUPBY ProductCategory unionallselectfrom Products GROUPBY ProductSubcategory Zapytanie zwróci wiersze pogrupowane po kategorii produktu oraz podkategorii. Należy podkreślić, że grupowania wykonywane są niezależnie od siebie i nie mają charakteru hierarchicznego (tak jak to b...
Bazy danych i XML 5204 dni, 19 godzin, 10 minut temu 32 źrodło rozwiń