Write less, do more! Nagłówek tego akapitu to motto biblioteki JavaScript, z którą postanowiłem się zapoznać: jQuery (podlinkowana strona jest godna gorącego polecenia, zawiera absolutnie wszystko, czego potrzeba do nauki). Nie miałem nigdy do czynienia z JavaScript, dlatego początkowo trudno było mi rozczytywać przykłady z dokumentacji (zwłaszcza, że niejedna linijka kodu w nich zawartego zaczyna się od zlepka $(„#, widniejącego w tytule wpisu). Opanowanie podstaw nie okazało się jednak trudne, po kilku...
Przez długi okres czasu zmagałem się z problemami związanymi z liczbami zmiennoprzecinkowymi w ASP.NET MVC 2. Problemów tych było tak wiele, że nie sposób jest omówić ich tu wszystkich. W większości przypadków dotyczyły one odmiennego interpretowania separatora (czyli znaku oddzielającego część całkowitą liczby, od części ułamkowej) przez serwer oraz przez walidator. Próbowałem wielu różnych sposobów, żeby sobie z tym poradzić, lecz nic nie dawało satysfakcjonujących mnie rezultatów. Okazało się, że wyni...
Pliki .chm to prosty sposób na help do programu, dodatkowo polecono mi programik Precision Helper (freeware), który ułatwia tworzenie dokumentacji. Niestety WPF nie ma wbudowanego mechanizmu do obsługi tych plików. Oczywiście można posiłkować się klasą Help z biblioteki System.Windows.Forms. Pozostaje tylko pytanie czy warto dołączać dużą (ok 5MB) bibliotekę, aby skorzystać z jednej klasy. Moim zdaniem nie warto. Postanowiłem napisać moduł, który zajmie się obsługą plików *.chm w WPF. Po kilku godzinach...
Na Codeplex w dziale Patterns & Practices pojawił się poradnik dla osób, które chciałyby przenieść swoje aplikacje na platformę Windows Azure.
Architektura 4512 dni, 22 godziny, 52 minuty temu 31 źrodło rozwiń
21 września zespół Microsoft SharePoint Team wykrył że luka w ASP.NET dotyczy także SharePoint w wersjach 2.0, 3.0 i w najnowszej wersji wydanej w tym roku - 4.0. Obecnie nie ma rozwiązania dla poważnej luki w bezpieczeństwie, jednakże pojawiło się obejście problemu, polegające na odpowiedniej modyfikacji web.config i dodaniu pliku obsługi błędów.
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 4515 dni, 23 godziny, 14 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 4517 dni, 1 godzinę, 7 minut 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...