dotnetomaniak.pl

Strona głównaUżytkownik

danielplawgo | użytkownik

danielplawgo
danielplawgo
7 721,14
6 godzin, 50 minut temu
15 kwietnia, 2009
dotnetomaniak.pl

Dodając nowy kontroler lub widok do aplikacji ASP.NET MVC wybieramy jeden z szablonów, które wykorzysta Visual Studio do ich wygenerowania. Jest to bardzo przydatne, gdy na przykład formularz edycji zawiera wiele pól. Visual Studio wygeneruje kontrolkę dla każdej właściwości z klasy, którą ustawimy jako model widoku. Podobnie jest z generowaniem kontrolerów. Jest to bardzo fajne, ale niestety na dłuższą metę tak wygenerowany kod, nie jest tym, co potrzebujemy i...

Źródło: plawgo.pl
Dziel się z innymi:
Jak zmienić generowanie kodu w ASP.NET MVC? - Blog Daniela Plawgo

Web 12 godzin, 12 minut temu danielplawgo 36 rozwiń

Wzorzec DAO (Data Access Object) jest jednym z częściej używanych wzorców do organizacji warstwy dostępu do danych . Dla każdego obiektu/tabeli z bazy (np User, Product) tworzymy dedykowany interfejs/klasy. Klasy te często nazywamy repozytoriami* (np. UserRepository, ProductRepository) i na ogół zawierają takie same metody. Jestem wielkim fanem szablonów T4. Lubie je wykorzystywać do automatyzacji tworzenia powtarzalnych i schematycznych elementów kodu. Właśni...

Źródło: plawgo.pl
Dziel się z innymi:
Generowanie kodu na przykładzie klas repozytorium, szablonów T4 oraz T4 Toolbox - Blog Daniela Plawgo

Narzędzia 8 dni, 9 godzin, 43 minuty temu danielplawgo 100 rozwiń

W wpisie o lokalizowaniu enumów pojawił się komentarz, w którym Janko zwrócił mi uwagę, że rozbijanie napisów na małe pliki resource nie jest najlepszym pomysłem pod względem wydajności. Jak pisałem w innym wpisie (Używanie napisów w aplikacji) stosuje wiele plików resource do organizacji napisów wyświetlanych użytkownikowi. Dlatego chciałem sprawdzić, czy to prawda. Przeglądając internet można trafić na pytania na stackoverflow: https://stackoverflow.com/ques...

Źródło: plawgo.pl
Dziel się z innymi:
Jeden czy wiele plików resource, a wydajność - Blog Daniela Plawgo

Inne 15 dni, 13 godzin, 46 minut temu danielplawgo 108 rozwiń

Wielokrotnie zastanawiam się, czy mój kod jest wydajny. Czy nie da się czegoś zrobić, aby aplikacja działała szybciej. Przy szybkości działania nie można założyć, że coś wydajne, bez zmierzenia tego. Jak zobaczysz pod koniec wpisu, może się okazać, że operacja, która wydaje się szybka, wcale taka nie jest. Jak zmierzyć wydajność kodu .NET? Możemy zrobić to na wiele sposobów. Niektórzy używają DateTime.Now, inni DateTime.UtcNow, czy też klasy StopWatch. W ka...

Źródło: plawgo.pl
Dziel się z innymi:
Jak zmierzyć wydajność kodu .NET? BenchmarkDotNet - Blog Daniela Plawgo

Narzędzia 22 dni, 13 godzin, 30 minut temu danielplawgo 138 rozwiń

Typ string jest jednym z najczęściej używanych typów danych w aplikacji. Gdy go potrzebujemy to po prostu otwieramy cudzysłów, wpisujemy wartość i zamykamy cudzysłów. Bardzo często nawet nie zastanawiamy się, czy to dobre podejście. Niestety w dłuższe perspektywie takie podejście oznacza problemy. A to robimy literówkę w kluczu podczas pobierania wartości z słownika, o której dowiadujemy się dopiero podczas wykonywana kodu (o ile go przetestujemy). A to musimy w 20...

Źródło: plawgo.pl
Dziel się z innymi:
Używanie napisów w aplikacji - Blog Daniela Plawgo

Inne 28 dni, 14 godzin, 43 minuty temu danielplawgo 109 rozwiń

Typy wyliczeniowy są używane do określenia jednej wartości z góry określonego zbioru. Dzięki nim możemy ułatwić sobie tworzenie kodu poprzez nadanie nazwy dla wartości, którą później używamy. Nazwa enuma musi spełniać rygory składni takich języków jak C#, dlatego potrzebujemy mechanizmu, który wyświetli ładny napisu w interfejsie użytkownika. W tym wpisie drogi czytelniku, pokaże Ci jak to zrobić małym nakładem pracy oraz przy okazji wspierać wiele języków. Zob...

Źródło: plawgo.pl
Dziel się z innymi:
Lokalizacja Enum - Blog Daniela Plawgo

Inne 35 dni, 14 godzin, 32 minuty temu danielplawgo 149 rozwiń

Dzisiejszy wpis jest zainspirowanym jednym z ostatnich code review jaki robiłem. Zauważyłem, że gdy pracujemy z Entity Framework często niektóre rzeczy zaczynamy robić nieefektywnie w stosunku do tego, jakbyśmy zrobili to w chociażby w przypadku ADO.NET. Taką właśnie czynnością jest aktualizowanie oraz usuwanie obiektów z bazy.Aktualizacja obiektu z jego pobraniem Standardowo, gdy zaczynamy uczyć się pracować z Entity Framework, do aktualizacji obiektu możemy ...

Źródło: plawgo.pl
Dziel się z innymi:
Entity Framework - aktualizacja danych bez ich pobierania - Blog Daniela Plawgo

Bazy danych i XML 42 dni, 14 godzin, 46 minut temu danielplawgo 178 rozwiń

W poprzednich dwóch postach (Postal – wysyłka email w ASP.NET MVC oraz Hangfire – wysyłka email w tle) pokazałem jak wysyłać wiadomości email w aplikacji ASP.NET MVC. Jeśli nie czytałeś/czytałaś tamtym wpisów, to zachęcam do nadrobienia lektury, szczególnie, że w tym wpisie będę bazował na kodzie, z tamtych wpisów. W dzisiejszym poście chciałbym jeszcze pozostać przy tej tematyce i pokaże Ci, w jaki sposób można automatycznie testować kod odpowiedzialny za wysy...

Testowanie wysyłki email w ASP.NET MVC - Blog Daniela Plawgo

Web 43 dni, 15 godzin, 6 minut temu danielplawgo 65 rozwiń

W poprzednim wpisie pokazałem jak w aplikacji ASP.NET MVC wysyłać wiadomości email z wykorzystaniem biblioteki Postal. Wspomniałem również, że wysyłka email w ramach żądania HTTP nie jest dobrym pomysłem, że lepiej skorzystać z jakiego mechanizmu kolejek oraz ponawiania operacji. Jednym z dostępnych narzędzi jest biblioteka Hangfire, która w prosty sposób jest wstanie wysłać email w tle, a do tego ponowić operację w momencie wystąpienia błędu.Hangfire Ostatnio do kolejkow...

Źródło: plawgo.pl
Dziel się z innymi:
Hangfire - wysyłka email w tle - Blog Daniela Plawgo

Web 48 dni, 16 godzin, 14 minut temu danielplawgo 103 rozwiń

Wysyłka email w ASP.NET MVC Wcześniej, czy później w aplikacji następuje potrzeba wysłania wiadomości email do użytkownika. W aplikacji ASP.NET MVC można zrobić to na wiele sposób. Możemy ręcznie przygotować treść wiadomości oraz wysłać ją z wykorzystaniem klasy SmtpClient. Możemy też skorzystać z tego, co daje ASP.NET MVC i użyć widoki do generowania treści wiadomości. W tym wpisie pokaże jak wykorzystać bibliotekę Postal do wysyłki email w ASP.NET MVC.Postal – przygotowan...

Źródło: plawgo.pl
Dziel się z innymi:
Postal - wysyłka email w ASP.NET MVC - Blog Daniela Plawgo

Web 56 dni, 6 godzin, 19 minut temu danielplawgo 73 rozwiń

Tworząc aplikację ASP.NET MVC w wielu miejscach wykorzystujemy stringi do określenia takich rzeczy jak: nazwa kontrolera, nazwa akcji, nazwa widoku, ścieżka do pliku i wiele innych. Osobiście nie lubię używania napisów w kodzie aplikacji. Ciężko znaleźć później użycia danego napisu, przez co, gdy zmieniamy na przykład nazwę akcji, to wtedy bardzo łatwo o pominięcie jakiegoś linku w aplikacji, co powoduje, że psujemy jej działanie. Do tego dochodzą problemy z literówkami, c...

Źródło: plawgo.pl
Dziel się z innymi:
T4MVC – sposób na stringi w aplikacji ASP.NET MVC – Blog Daniela Plawgo

Web 62 dni, 9 godzin, 41 minut temu danielplawgo 100 rozwiń

Pracując z kontenerami Dependency Injection bardzo często dochodzi to sytuacji, gdy kod konfiguracji takiego kontenera bardzo się rozrasta. W szczególności, gdy korzystamy z biblioteki, która nie wspiera autorejestracji (przez dłuższy czas w jeden z aplikacji WPF wykorzystywałem Unity, gdzie trzeba było każdy typ zarejestrować ręcznie w kontenerze), przez co klasa konfiguracji może zawierać dziesiątki, jak i nie setki linii kod. Na szczęście Autofac, którego wykorzystuje o...

Źródło: plawgo.pl
Dziel się z innymi:
Wykorzystanie modułów do konfiguracji kontenera Autofac – Blog Daniela Plawgo

Narzędzia 66 dni, 14 godzin, 28 minut temu danielplawgo 88 rozwiń

Wstrzykiwanie zależności z wykorzystaniem kontenerów jest bardzo wygodne, ale też niesie z sobą trochę problemów. Jednym z tych problemów jest ilość oraz moment tworzenia obiektów. W tym wpisie pokaże ten problem oraz zaproponuje swoje rozwiązanie z wykorzystaniem obiektów Lazy. Poniżej jest przedstawiona dość standardowy kawałek kodu aplikacji ASP.NET MVC, w której jest wykorzystane wstrzykiwanie zależności przez konstruktor w formie interfejsów. Jak widać na kodzie pow...

Źródło: plawgo.pl
Dziel się z innymi:
Wstrzykiwanie zależności z wykorzystaniem Lazy – Blog Daniela Plawgo

Sztuka programowania 84 dni, 15 godzin, 56 minut temu danielplawgo 109 rozwiń

W jednym z wcześniejszych wpisów pokazałem jak za pomocą dwóch bibliotek (Nbuilder oraz Faker.NET) wygenerować dane testowe. Przez dłuższy czas korzystałem z tamtego rozwiązania, natomiast ostatnio kolega z pracy pokazał mi inną, ciekawszą bibliotekę, która łączy działanie Nbuildera oraz Faker.NET. Do tego ma kilka dodatkowych funkcji, które się przydają. Biblioteka nazywa się Bogus i jest to port biblioteki Faker.js. Po pierwsze biblioteka umożliwia wygenerowanie jednego...

Źródło: plawgo.pl
Dziel się z innymi:
Bogus – generowanie danych testowych | Blog Daniela Plawgo

Narzędzia 84 dni, 15 godzin, 56 minut temu danielplawgo 137 rozwiń

W poprzednim wpisie pokazałem, jak użyć Fluent Validation w aplikacji WPF. Wspomniałem, że tamta implementacja niestety nie nadaje się, gdy potrzebujemy walidować dane w sposób asynchroniczny – np. sprawdzić w usłudze, czy dane są unikalne. W tamtym wpisie pokazałem użycie IDataErrorInfo ponieważ jest on najczęściej wykorzystywany do realizacji walidacji. Natomiast dzisiaj opiszę nową wersję tego interfejsu, dodaną w .NET 4.5 – INotifyDataErrorInfo. Co fajne nowy interfejs...

Źródło: plawgo.pl
Dziel się z innymi:
Integracja Fluent Validation z WPF wersja async | Blog Daniela Plawgo

Windows 111 dni, 13 godzin, 45 minut temu danielplawgo 49 rozwiń

W poprzednich wpisie pokazałem w jaki sposób można zintegrować Fluent Validation z aplikacją ASP.NET MVC, dzisiaj przyszedł czas na WPF. W WPF jest kilka sposobów na realizację walidacji. Najczęściej wykorzystuje się do tego interfejs IDataErrorInfo, który definiuje dwa elementy: właściwość Error zawierającą informacje o błędach oraz indekser, który zwraca błąd dla właściwości o nazwie przekazanej jako indeks. Interfejs ten można wykorzystać do integracji Fluent Validatio...

Źródło: plawgo.pl
Dziel się z innymi:
Integracja Fluent Validation z WPF | Blog Daniela Plawgo

Windows 114 dni, 15 godzin, 48 minut temu danielplawgo 63 rozwiń

W dzisiejszym wpisie pokaże dwa sposoby w jaki sposób można integrować bibliotekę Fluent Validation z ASP.NET MVC. Pierwszy domyślny, który dostarcza sama biblioteka oraz drugi mój, który rozwiązuje cześć problemów z domyślnej integracji.Domyślna integracja Integracja Fluent Validation z ASP.NET MVC jest bardzo prosta, sprowadza się do dwóch kroków:Instalacja pakietu FluentValidation.Mvc5 z nugetaDodanie linijki konfiguracji biblioteki w metodzie startującą aplikację (Mvc...

Źródło: plawgo.pl
Dziel się z innymi:
Integracja Fluent Validation z ASP.NET MVC | Blog Daniela Plawgo

Web 121 dni, 9 godzin, 5 minut temu danielplawgo 98 rozwiń

W poprzednim wpisie opisałem w jaki sposób można wykorzystać bibliotekę Fluent Validation do zorganizowania walidacji danych w aplikacji. W walidatorze możemy użyć metodę Must do definiowania własnej logiki walidacji (jak to było zrobione na przykładzie walidacji nipu). W większości przypadków takie podejście jest wystarczające. Czasami, gdy jakąś logikę musimy współdzielić między różnymi walidatorami w aplikacji (lub nawet między różnymi aplikacjami) możemy stworzyć wali...

Źródło: plawgo.pl
Dziel się z innymi:
Fluent Validation – własny walidator | Blog Daniela Plawgo

Narzędzia 125 dni, 16 godzin, 6 minut temu danielplawgo 111 rozwiń

Wpadłem w pułapkę relacji wiele do wielu, m:n. Po raz kolejny. Jak fretka w sidła... te same po raz n-ty (czy m-ty?). Byłem na siebie tak wściekły, że to ludzkie pojęcie przechodzi. Właściwie bardziej mi teraz szkoda nerwów niż straconego czasu. Ale o co się, panie, rozchodzi? W moim systemie miałem bardzo prostą zależność: Company (n) - (m) Customer. Firma posiada wielu klientów, a klient przypisany jest do wielu firm. Bez dodatkowych ceregieli utworzyłem:

Maciej Aniserowicz | Pułapka relacji wiele-do-wielu (m:n)

Architektura 2720 dni, 21 godzin, 54 minuty temu Paweł Łukasik 320 rozwiń

Od dziś rozpoczynają się dwa równoległe cykle poświęcone programowaniu w technologii mobilnej Windows Phone 7. Pierwszy z nich będzie dostępny na portalu Channel9. Autorami webcastów są Barłomiej Zass, Michał Korzunowicz, Daniel Plawgo oraz ja Pierwszy odcinek, którego jestem autorem dostępny jest pod tym adresem. Jest on poświęcony ogólnemu wprowadzeniu w tematykę Windows Phone 7 jako platformy dla programistów, opowiadam o narzędziach. Pokazuję rowniez jak stworzyć swoją pierwszą aplikację na tą plat...

3. 2. 1. Start. Windows Phone 7 na Channel 9 i codeguru.pl «  Maciej Grabek

Mobile development 2739 dni, 22 godziny, 44 minuty temu maciejgrabek 39 rozwiń

1 2 3 4 5... 9 10
.NET DeveloperDays 2018

wrzesień

21.
Dev#
Gdansk, Stary Manez

październik

27.
Dodaj nowe Zobacz wszystkie

Najaktywniejsi

1

Paweł Łukasik (32 873,58)

2

macko (32 816,53)

3

pzielinski (27 178,29)

4

gordon_shumway (21 178,88)

5

paduda (20 336,33)

6

psz750 (13 018,14)

7

rroszczyk (10 393,76)

8

Damian (9 635,27)

9

danielplawgo (7 721,14)

10

arek (6 807,95)

11

burczu (6 214,22)

12

PaSkol (5 393,84)

13

lukaszgasior (4 097,38)

14

jj09 (3 833,06)

15

dpawlukiewicz (3 785,36)

16

AdrianBystrek (3 500,85)

17

spetz (3 433,34)

18

jedmac (3 318,39)

19

http://jakub-flor... (3 224,66)

20

KonradKokosa (2 991,22)