Strona głównaUżytkownik

pzielinski | użytkownik

pzielinski
pzielinski
27 178,29
4088 dni, 21 godzin, 3 minuty temu
21 lutego, 2010
dotnetomaniak.pl

Operator WITH ROLLUP używa się w połączeniu z GROUPBY. Czasami istnieje potrzeba grupowania wyników po dwóch kolumnach. Wyobraźmy sobie, że mamy tabelę lub widok zawierający listę sprzedanych produktów. Będziemy mieli zatem takie kolumny jak “nazwa produktu”, “nazwa sklepu w którym został sprzedaży produkt” oraz “typ produktu”. Przykładowe zapytanie wyglądałoby więc następująco:select StoreName,ProductType,sum(Number) from SoldProducts GROUPBY StoreName,ProductType Zapytanie zwróci produkty pogrupowa...

Tagi:
Dziel się z innymi:
Piotr Zieliński  » Blog Archive   » GROUP BY i WITH ROLLUP

Bazy danych i XML 5242 dni, 13 godzin, 14 minut temu pzielinski 52 źrodło rozwiń

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 5246 dni, 7 godzin, 47 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 5248 dni, 22 godziny, 6 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 5253 dni, 5 godzin, 35 minut 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 5255 dni, 18 godzin, 55 minut 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 5259 dni, 10 godzin, 53 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 5260 dni, 6 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 5261 dni, 21 godzin, 35 minut 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 5270 dni, 20 godzin, 25 minut 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 5274 dni, 8 godzin, 56 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 5278 dni, 6 godzin, 29 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 5278 dni, 6 godzin, 29 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 5278 dni, 9 godzin, 36 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 5282 dni, 3 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 5284 dni, 13 godzin, 51 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 5289 dni, 12 godzin, 33 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 5291 dni, 13 godzin, 54 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 5294 dni, 22 godziny, 17 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 5294 dni, 22 godziny, 17 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 5301 dni, 6 godzin, 39 minut temu pzielinski 98 źrodło rozwiń

1 2... 16 17 18 19 20