Strona głównaUżytkownik

pzielinski | użytkownik

pzielinski
pzielinski
27 178,29
4090 dni, 1 godzinę, 32 minuty temu
21 lutego, 2010
dotnetomaniak.pl

Windows Identity Foundation można również z łatwością wykorzystać w Windows Communication Foundation. Zainteresowanych odsyłam do tego artykułu:): http://msdn.microsoft.com/pl-pl/library/ff769959.aspx?id=rss

Tagi:
Dziel się z innymi:
Integracja Windows Identity Foundation z WCF

Inne 5247 dni, 12 godzin, 16 minut temu pzielinski 53 źrodło rozwiń

Framework WIF dostarcza ujednolicony model zabezpieczeń. W łatwy sposób można przełączać się między tokenami generowanymi na podstawie loginu\hasła czy CardSpace – kod pozostaje niezmienny. Zainteresowanych zapraszam mojego ostatniego artykułu: http://msdn.microsoft.com/pl-pl/library/ff720168.aspx

Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Windows Identity Foundation – integracja z ASP .NET

Web 5250 dni, 2 godziny, 35 minut temu pzielinski 97 źrodło rozwiń

Widoki częściowe pozwalają na wyodrębnienie ze strony pewnych części do osobnego pliku. Załóżmy, że projektujemy widok strony głównej sklepu internetowego. Z pewnością taki widok zawiera m.in. informacje o stanie koszyka, menu, listę kategorii i produkty w promocji. Można oczywiście wszystkie dane umieścić w jednym pliku aspx. Niestety w takim przypadku plik źródłowy widoku byłby bardzo długi i skomplikowany. Lepszym rozwiązaniem jest zapisanie poszczególnych fragmentów do różnych plików – widoków części...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » ASP .NET MVC – widoki częściowe, MasterPages

Web 5254 dni, 10 godzin, 4 minuty temu pzielinski 96 źrodło rozwiń

OUTPUT pozwala na zwrócenie wierszy d0danych, zaktualizowanych lub usuniętych za pomocą komend INSERT, UPDATE  i DELETE. Zwrócony wynik możemy wyświetlić po prostu na ekranie lub wstawić do innej tabeli.  Wyobraźmy sobie, że mamy tabele Employee oraz EmployeeLog zawierającą logi. W celu wykonania loga możemy: INSERTINTO Employee (IDEMPLOYEE,FirstName,LastName) OUTPUT getdate(),'wstawiono wiersz',inserted.IDEMPLOYEE INTO EmployeeLog values(1,'Jakies imie,','Jakies nazwisko'); Równoważny efekt można osi...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » T-SQL, klauzula OUTPUT

Bazy danych i XML 5256 dni, 23 godziny, 24 minuty temu pzielinski 47 źrodło rozwiń

W SQL Server 2005 wprowadzono operator Apply. Służy on do łączenia tabeli z funkcją zwracającą również tabelę (table-valued function). Po lewej stronie operatora mamy więc zwykłą tabelę (np. "Employees”) a  po prawej jakąś funkcję (np. “GetContactInfo”). Apply wywoła GetContactInfo dla każdego wiersza z Employee. W T-SQL występują dwie odmiany operatora: CROSS APLY i OUTER APPLY. Pierwszy  z nich złączy wyłącznie te wiersze dla których funkcja zwraca jakiś wynik. Z kolei OUTER APPLY złączy wiersze zastęp...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Operator Apply (T-SQL)

Bazy danych i XML 5260 dni, 15 godzin, 22 minuty temu pzielinski 79 źrodło rozwiń

Formularz w ASP .NET MVC można zdefiniować za pomocą czystego HTML np: Znacznie wygodniejszym rozwiązaniem jest jednak użycie metod dostarczonych przez helpery. W ASP .NET MVC podstawowym helperem jest HTMLHelper do którego można uzyskać referencję w widoku za pomocą właściwości HTML. Stworzenie formularza wygląda więc następująco:<% using (Html.BeginForm()) { %><%}%> Domyślnie zostanie użyta akcja w której się znajdujemy – np. /Clients/Create. Można również zdefiniować...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » ASP .NET MVC, formularze

Web 5261 dni, 4 godziny, 35 minut temu pzielinski 109 źrodło rozwiń

Widok czyli graficzny interfejs użytkownika definiuje się w ASP .NET MVC za pomocą kilku helperów oraz czystego HTML\XHTML. Prosty widok prawie niczym nie różni się od dokumentu XHTML:<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage"%> Jedyną nowością jest dodanie deklaracji Page oraz atrybutu runat=”server”. Jak jednak pamiętamy z poprzedniego postu, kontroler do widoku...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » ASP .NET MVC – definiowanie widoku, podstawy

Web 5263 dni, 2 godziny, 4 minuty temu pzielinski 94 źrodło rozwiń

ASP .NET MVC jest frameworkiem wspierającym wzorzec projektowy MVC. Należy zdawać sobie sprawę, że przechodząc z klasycznego ASP .NET na ASP .NET MVC tracimy możliwość korzystania ze zbioru kontrolek typu ListView, Repeater itp. Na początku może wydawać się to bardzo ograniczające jednak w praktyce czas wymagany na stworzenie aplikacji webowej jest niewiele dłuższy a za to zyskujemy znacznie większą elastyczność. Ponadto ze względu na brak standardowych kontrolek nie ma bałaganu z ViewState. Uogólniając,...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Model-View-Controller – ASP .NET MVC, wprowadzenie

Architektura 5272 dni, 54 minuty temu pzielinski 72 źrodło rozwiń

Załóżmy, że mamy tabelę składającą się z 4 kolumn: FirstName, LastName, CompanyName oraz PersonType. Pole  PersonType przyjmuje ‘C’ gdy dany wiersz przedstawia firmę oraz ‘N’ gdy reprezentuje osobę fizyczną. Następnie chcemy wyświetlić w zależności od typu osoby nazwę firmy (C) lub imię+nazwisko(N). Zadanie można zrealizować za pomocą klauzuli case when:select (casewhen PersonType='C'then CompanyName else FirstName+''+LastName end) Name from Persons Powyższy przykład miał tylko pokazać zastosowanie ca...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Warunkowe wyświetlanie kolumn w T-SQL

Bazy danych i XML 5275 dni, 13 godzin, 25 minut temu pzielinski 58 źrodło rozwiń

Jakiś czas temu napisałem artykuł o podstawach EF. Jeśli ktoś interesuje się EF to możliwe, że zaciekawi  go mój nowy artykuł o wykorzystaniu Entity Framework w aplikacji trójwarstwowej – warstwa prezentacji jest oddzielona usługą sieciową (WCF) od warstwy dostępu dodanych. Miłego czytania: http://msdn.microsoft.com/pl-pl/library/ff714342.aspxExplore posts in the same categories:EntityFramework This entry was posted on Friday, June 4th, 2010 at 10:39 am ...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Entity Framework – aplikacja trójwarstwowa

Bazy danych i XML 5279 dni, 10 godzin, 58 minut temu pzielinski 108 źrodło rozwiń

W MVC wyróżniamy 3 główne typy klas: model, widok oraz kontroler. Model stanowi bramkę dostępową do warstwy biznesowej. Przetrzymuje informacje o aktualnym stanie interfejsu. W pewnych przypadkach model może stanowić bezpośrednio klasę z warstwy biznesowej (np. dla wzorca skrypt transakcji jest to możliwe). Zwykle jednak tworzy się osobne modele (albo wrappery) dla warstwy prezentacji. Widok z kolei to interfejs graficzny w czystej postaci. W przypadku Silverlight, WPF jest to po prostu plik zawierając...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Wzorzec Model-View-Controller

Architektura 5279 dni, 10 godzin, 58 minut temu pzielinski 98 źrodło rozwiń

Warstwa prezentacji odpowiedzialna jest za komunikację z użytkownikiem. W dzisiejszych czasach interfejsy graficzne są na tyle rozbudowane, że poprawne zaprojektowanie warstwy prezentacji stanowi poważne wyzwanie. W małych projektach często ta warstwa stanowi najbardziej złożoną część całej architektury. Bez wykorzystania stosownych wzorców projektowych po pewnym czasie pisania aplikacji okaże się, że jakakolwiek zmiana interfejsu wiąże się ze skomplikowaną refaktoryzacją kodu. Jedną z podstawowych cec...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Warstwa prezentacji – wprowadzenie

Architektura 5279 dni, 14 godzin, 5 minut temu pzielinski 105 źrodło rozwiń

Zaczynamy standardowo od czystej definicji zasady:Kod z warstw z wyższego poziomu nie powinien zależeć od kodu z niższych warstw. Obie warstwy za to powinny być zależne od abstrakcji.Abstrakcje nie powinny zależeć od szczegółów (konkretnej implementacji). Z kolei szczegóły (implementacja) powinna zależeć od abstrakcji. Najlepiej rozważmy to na przykładzie aplikacji enterprise. Kodem z niższej warstwy może być np. DAL (warstwa dostępu do danych) a  z wyższej – warstwa biznesowa. Według zasady, warstwa bi...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Zasady S.O.L.I.D – Dependency inversion principle

Architektura 5283 dni, 4 godziny, 32 minuty temu pzielinski 78 źrodło rozwiń

Zasada mówi żeby tworzone przez programistę interfejsy były odpowiedzialne za jak najmniejsza funkcjonalność. Użytkownik chcąc zaimplementować taki interfejs nie powinien pisać metod, których nie potrzebuje. Jeśli znajdują się w nim niepotrzebne metody to wtedy nazywamy go interfejsem “fat” lub “polluted”. Najlepiej rozważyć to na klasycznym przykładzie (z oodesign):interface IWorker { void Work(); void Eat(); } class Worker: IWorker { publicvoid Work() { } publicvoid ...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Zasady S.O.L.I.D – Interface Segregation Principle

Architektura 5285 dni, 18 godzin, 20 minut temu pzielinski 94 źrodło rozwiń

Na początek podam czystą definicje z wiki: “Funkcje które używają wskaźników lub referencji do klas bazowych, muszą być w stanie używać również obiektów klas dziedziczących po klasach bazowych, bez dokładnej znajomości tych obiektów.” Początkowo za wiele ta tajemnicza definicja nie mówiła mi. Innymi słowy, klasa dziedzicząca powinna  rozszerzać możliwości klasy bazowej a nie całkowicie zmieniać jej funkcjonalność. Sposób korzystania z klasy potomnej powinien być analogiczny do wywoływania klasy bazowej...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Zasady S.O.L.I.D – zasada podstawienia Liskov

Architektura 5290 dni, 17 godzin, 2 minuty temu pzielinski 101 źrodło rozwiń

Zasada O\C mówi, że oprogramowanie powinno być otwarte na rozszerzenia a zamknięte na modyfikacje. Innymi słowy programista powinien być w stanie uzyskać zamierzony efekt poprzez rozszerzenie klasy czy przeładowanie metody a nie zmianę już istniejącego kodu. Zasada jest szczególnie istotna w przypadku kodu produkcyjnego, w którym wszelkie możliwości modyfikacji kodu są ograniczone. Zasada pozwala budować modularne systemy. Użycie ENUM moim zdaniem jest złamaniem Open\Closed principle. Wykorzystując w kod...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Zasady S.O.L.I.D – Open/closed principle

Architektura 5292 dni, 18 godzin, 23 minuty temu pzielinski 93 źrodło rozwiń

W Inżynierii oprogramowania SOLID oznacza zestaw podstawowych zasad projektowania oprogramowania. Każda literka w wyrazie jest skrótem do jakieś zasady. ‘S’ oznacza Single Responsibility Principal. Podejrzewam, że większość osób doskonale zna już tą zasadę. Aby jednak zachować pewien porządek na blogu będę tłumaczył nawet te oczywiste reguły:). W skrócie zasada mówi, że każdy obiekt (klasa) powinien być odpowiedzialny za jak najmniejszy fragment logiki. Niedopuszczalne jest aby klasa wykonywała dwie nie...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Zasady S.O.L.I.D – Single Responsibility Principal

Architektura 5296 dni, 2 godziny, 46 minut temu pzielinski 248 źrodło rozwiń

Pewien kolega podesłał mi dziś ciekawy fragment kodu (znaleziony na jakimś blogu):int level =10; Func

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » Pętla (ciekawostka)

Inne 5296 dni, 2 godziny, 46 minut temu pzielinski 111 źrodło rozwiń

Kiedyś czytając książkę “More Effective C#” zaciekawiło mnie wyjaśnienie interpretacji wyrażeń lambda przez kompilator. W książce autor przedstawił następujący fragment kodu:publicclass ModFilter { privatereadonlyint modulus; public ModFilter(int mod) { modulus = mod; } public IEnumerable

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » W jaki sposób interpretowane są wyrażenia lambda?

Architektura 5302 dni, 11 godzin, 8 minut temu pzielinski 98 źrodło rozwiń

Podczas generowania modelu encji na podstawie bazy danych, EF potrafi pobrać maksymalną długość pola. Jeśli kolumna w bazie posiada typ nvarchar(50) to EF zmapuje to na zmienną typ string oraz ustawi pole MaxLength na wartość 50. Informacja o dozwolonej długości (50) jest zapisana w metadanych. Niestety próba przypisania wartości dłuższej niż 50 znaków zakończy się powodzeniem ponieważ nvarchar(50) został zmapowany na string, który nie ma ograniczenia do 50 znaków. Poniższy kod NIESTETY zadziała:Conta...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » MaxLength w EntityFramework oraz Text Template Transformation Toolkit (T4).

Bazy danych i XML 5309 dni, 4 godziny, 9 minut temu pzielinski 34 źrodło rozwiń

1 2... 16 17 18 19 20