W drugiej części artykułu o tym jak stworzyć własny MembershipProvider i RoleProvider rozpoczynamy od utworzenia w głównym katalogu projektu folderu o nazwie Infrastructure, a w nim dwóch plików: MyMembershipProvider.cs i MyRoleProvider.cs.
Strona głównaUżytkownik
Paweł Łukasik | użytkownik
Artykuł omawia tworzenie własnego MembershipProvidera i RoleProvidera w ASP.NET MVC. Możemy oczywiście skorzystać z bazy ASPNETDB stworzonej przez Microsoft, ale warto się zastanowić czy jest to najlepszy sposób gdy mamy własne wyobrażenie tabel w bazie danych przechowujących użytkowników i role albo korzystamy z Entity Framework i Code First - wówczas do projektowanej bazy możemy dodać tabele z ASPNETDB, ale przy każdej zmianie którejś z klas modelu zostaną one usunięte jeśli dziedziczymy po klasie Drop...
W ramach pakietu dystrybucyjnego .NET Framework do systemu trafia biblioteka SOS.DLL, która pozwala analizować kod .NET w WinDbg. Na tym blogu promuję jednak użycie biblioteki psscor4 (i wcześniejszej psscor2) do analizy dumpów (a także debuggowania aktywnych procesów), co wiąże się głównie z tym, że biblioteka ta jest niezależna od konkretnej wersji CLR (a konkretniej biblioteki mscordacwks.dll), w ramach której uruchomiony był proces. Do tego dochodzi fakt, że psscor zawiera wszystkie te rozszerzenia, ...
W ostatnim wpisie pokazałem w jaki sposób wczytać i uruchomić paczkę Integration Services w aplikacji .NET. Dzisiaj rozszerzę ten temat, prezentując kod C# pozwalający na pobranie danych z paczki SSIS zawierającej komponent DataReader Destination. Komponent ten poprzez interfejs DataReader udostępnia aplikacjom zewnętrznym zestaw danych z elementu DataFlow.
Jak każdemu porządnemu developerowi zdarza mi się czasem napisać testy. Jak każdemu porządnemu developerowi, czasem zdarza mi się wykorzystać mechanizm metod rozszerzających (jeśli nie wiesz o czym mówię sprawdź na msdn). Jak każdy prawdziwy developer, chciałem przetestować logikę, która była wykorzystywana w jednej z takich metod. W zasadzie to nie w samej metodzie, chciałem sprawdzić czy zostanie wywołana z wartościami, które są dla mnie ważne. Zacznę od metod rozszerzających, a testowanie przyjdzie ...
Sztuka programowania 4542 dni, 3 godziny, 10 minut temu 207 źrodło rozwiń
Telefony z Windows Phone wyposażone są w wibrację, z której możemy korzystać zarówno w grach jak i normalnych aplikacjach. Podstawowe API kontrolera wibracji (VibrateController) pozwana na pojedynczą wibrację, która trwa określony czas. Problem pojawia się gdy chcemy “zagrać” sekwencję wibracji o różnych czasach trwania, z różnymi przerwami. Poniżej przedstawiam klasę VibrationProvider.
Mobile development 4542 dni, 3 godziny, 10 minut temu 46 źrodło rozwiń
W dzisiejszym temacie przedstawię przykładowy kod C# umożliwiający załadowanie i uruchomienie paczki Integration Services. Na początku w projekcie konieczne jest dodanie referencji do Microsoft.SQLServer.ManagedDTS.dll. Wszystkie użyte klasy znajdują się w przestrzeni Microsoft.SqlServer.Dts.Runtime.
W trakcie tworzenia serwisów bazujących na ASP.NET niejednokrotnie zdarza się potrzeba przesyłania dużych plików przez sieć. W przypadku, gdy kontroler, aby przetransportować plik do przeglądarki, musi odwołać się do usługi sieciowej (w opisywanym przez mnie wypadku WCF) sprawy mogą się trochę skomplikować. Ponieważ nie chcielibyśmy, aby nasz serwer regularnie zapychał się buforując dużą ilość danych, dobrym rozwiązaniem byłoby utworzenie strumienia wzdłuż całego stosu komunikacyjnego...
Programowanie rozproszone 4545 dni, 21 godzin, 33 minuty temu 227 źrodło rozwiń
Na blogu Pawła Potasińskiego istnieje wpis o sposobach konwersji polskich liter zakodowanych w standardzie Mazovia w środowisku SQL Serwera. Jednym z tych sposobów jest zrealizowanie konwersji za pomocą funkcji rozszerzonej, napisanej w .NET. Niestety, nie wykorzystuje ona standardowych mechanizmów konwersji .NET (Encoding), ale zwykłą podmianę znaków (Replace). Dlaczego klasa Encoding nie podołała temu zadaniu i jak mimo wszystko zmusić ją do niego? Odpowiedź w tym wpisie.
Bazy danych i XML 4542 dni, 16 godzin, 47 minut temu 121 źrodło rozwiń
RxExtension - to biblioteka od Microsoftu ułatwiająca programowanie asynchroniczne. Opiera się na istniejących interfejsach IObservable oraz IObserver. W RX wiadomości są traktowane jako strumienie danych, do których należy się przypiąć i reagować na pojawienie się nowej wiadomości. Najnowsza wersja ma już cyferkę 2, ale nie jest jeszcze oznaczona jako stabilna. Ja do nauki wykorzystałem wersję 1 oraz książeczkę dostępną na stronie RX - Dev Labs Hands On. Na Channel9 są jakieś filmy na temat RX. Poniże...
Jedną z ciekawiej zapowiadających się nowości w języku Transact-SQL (T-SQL) w SQL Server 2012 była funkcja FORMAT. Wspomniał o niej choćby Marcin Nowakowski opisując nowe funkcje skalarne w najnowszej odsłonie systemu SQL Server. FORMAT daje spore możliwości tworzenia ciągów znakowych sformatowanych według zadanego wzorca zgodnego z wybraną notacją narodową (np. wybór formatowania “pie...
Bazy danych i XML 4549 dni, 17 godzin, 44 minuty temu 94 źrodło rozwiń
Gry w odróżnieniu do aplikacji “biznesowych” często wydają z siebie dźwięki i muzykę. W wytycznych certyfikacji na Windows Phone Marketplace znajdziemy zapisy, które regulują co w kwestii dźwięków jest wymagane z naszej strony. Poniżej przedstawię przydatną klasę SoundProvider, która uprości nam zarządzanie dźwiękiem. WP Marketplace wymaga m.in od nas aby użytkownik mógł...
Mobile development 4552 dni, 11 godzin, 24 minuty temu 27 źrodło rozwiń
Chciałbym poświęcić kilka postów na opisanie WeakReference oraz praktycznych przykładów wykorzystania tej klasy. W dzisiejszym wpisie strona teoretyczna i opis klasy. Referencje w środowisku .NET można podzielić na słabe (weak references) oraz silne\mocne (strong references). Silne referencje są wszystkim doskonale znane np:var sampleClass =new SampleClass(); Innymi słowy jest to standardowy typ powiązania. W momencie gdy wszystkie silne referencje zostaną usunięte wtedy GC może zacząć usuwać taki o...
Sztuka programowania 4557 dni, 8 godzin, 10 minut temu 323 źrodło rozwiń
In this post I’m going to show you how to diagnose SQL exceptions using memory dumps. Imagine you have a web application deployed on a production server. Your application is using Elmah configured to log all exceptions to a dedicated table. One day you receive information that users are unable to make orders and in the Elmah log there are lots of SqlTypeExceptions: SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 1...
Ten wpis jest częścią cyklu o moich przygodach w tworzeniu gier XNA dla Windows Phone. Gdy tworzyłem swoją pierwszą grę (tzn. przepisywałem z tutoriala) nauczyłem się, że:Texture2D – reprezentuje dowolną grafikę, teksturęVector2 – punkt na ekranie, np. aktualna pozycja gracza/wroga, początkowa pozycja gracza/wroga, pozycja tektury przycisku, pozycja wyświetlania się wynikówRectangle – przydaje się do wykrywania wszelkich kolizji np.: gracz vs wróg, pocisk v...
Mobile development 4556 dni, 13 godzin, 28 minut temu 90 źrodło rozwiń
W najnowszej wersji SQL Server język T-SQL wzbogacony został o kilka nowych funkcji analitycznych. Są to tzw. funkcje okienkowe operujące na podzbiorach (oknach danych tworzonych klauzulą OVER) głównego zbioru zwróconego przez zapytanie. Zanim przejdę do omówienia wspomnianych funkcji pokażę co zmieniło się w samym poleceniu OVER.
Bazy danych i XML 4556 dni, 21 godzin, 16 minut temu 249 źrodło rozwiń
Opublikowano We wpisie o pokryciu kodu (Code Coverage) napisałem: Należy pamiętać, że to są narzędzia dla programisty Co przez to rozumiem? Code Coverage nie może być używany przez kierownictwo/zarząd/management/etc – a już pod żadnym pozorem nie może być związany finansowo z wypłatą programisty. Dlaczego? Przyciśnięty programista może bardzo łatwo wygenerować dowolne pokrycie kodu i to przy dosyć małej ilości pracy. Pisząc odpowiednią ilość testów jednostkowych bez asercji można uzyskać 100% pokryci...
Myślałem trochę nad tematami na następne wpisy i sądzę, że jest sporo tematów, nad którymi wypada się pochylić, zarówno tematów dla DBA/DEV, jak i tematów z zakresu Business Intelligence. Pierwszy temat wpadł mi do głowy przy okazji przygotowywania prezentacji na 61. spotkanie warszawskiego oddziału PLSSUG (Polish SQL Server User Group). Wspólnie z Małgosią Borzęcką zaprezentowałem wprowadzenie do indeksów columnstore. W zasadzie chyba używając słowa “wprowadzenie” dokonałem nadużycia :-) Sesja miała co...
Bazy danych i XML 4560 dni, 21 godzin, 30 minut temu 90 źrodło rozwiń
Wraz z najnowszą wersją SQL Server firma Microsoft udostępniła darmowy dodatek do Visual Studio 2010 pod nazwą SQL Server Data Tools (SSDT). Z kolei ten produkt niedawno doczekał się rozszerzenia: SQL Server Data Tools Power Tools (SSDT Power Tools). Głównym zadaniem wymienionych narzędzi jest umożliwienie wygodnej pracy z bazami danych SQL Server z poziomu Visual Studio.
W dzisiejszym wpisie pokażę w jaki sposób dla danego obiektu WPF wygenerować kod XAML oraz jak taki kod wczytać dynamicznie podczas działania programu. W tym celu użyję klas XamlWriter i XamlReader.