Strona głównaUżytkownik

cieszak | użytkownik

cieszak
cieszak
151,42
1331 dni, 20 godzin, 24 minuty temu
16 kwietnia, 2009
dotnetomaniak.pl

W kilku ostatnich wpisach na blogu zająłem się tematem testowania WebApi z wykorzystaniem testów w Postmanie. Ostatnio mogłeś zobaczyć, w jaki sposób wykonywać automatycznie testy w Azure DevOps. Użyty w tamtym wpisie przykład był bardzo prosty i tak naprawdę nie do końca był namiastką realnej aplikacji. Nie używał on bazy danych, a dane generował dzięki bibliotece NBuilder i przechowywał je w pamięci. Przez to powrót do znanego stanu przed uruchomieniem testów...

Jak użyć Sql Server Snapshots do resetowania danych w testach - Blog Daniela Plawgo

Narzędzia 1935 dni, 2 godziny, 40 minut temu danielplawgo 127 źrodło rozwiń

W poprzednim wpisie pokazałem Ci, jak użyć Sql Server Snapshots do resetowania stanu bazy w automatycznych testach. Innym podejściem, które możemy wykorzystać podczas pracy, jest po prostu usuwanie z bazy danych, które zostały dodane podczas wykonywania testów. Tytułowa biblioteka Respawn umożliwia realizację czegoś takiego w bardzo prosty sposób, ale ma również niestety swoje wady. Zobacz, co umożliwia i gdzie może Ci się ona przydać.Respawn Respawn (https://...

Źródło: plawgo.pl
Dziel się z innymi:
Respawn – usuwanie danych z bazy - Blog Daniela Plawgo

Bazy danych i XML 1928 dni, 2 godziny, 32 minuty temu danielplawgo 102 źrodło rozwiń

Już kiedyś opisywałem na tym blogu, że jednym z większych problemów, które widzę w projektach moich kursantów, są migracje bazy danych. Kilka miesięcy temu opisywałem trzy różne podejścia: migrację w Entity Framework, Fluent Migratora oraz DbUp. Podejścia te, jak sądzę, pokrywają większość przypadków, które możesz mieć w swojej aplikacji. Kolejnym problemem związanym z migracjami jest ich uruchamianie. O ile w jakimś projekcie jest już użyty jakiś mechanizm (n...

Źródło: plawgo.pl
Dziel się z innymi:
Uruchamianie migracji bazy w Azure DevOps - Blog Daniela Plawgo

Bazy danych i XML 1921 dni, 3 godziny, 51 minut temu danielplawgo 90 źrodło 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 2440 dni, 19 godzin, 49 minut temu danielplawgo 111 źrodło 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 2363 dni, 1 godzinę, 49 minut temu danielplawgo 83 źrodło 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 2362 dni, 1 godzinę, 30 minut temu danielplawgo 197 źrodło 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 2355 dni, 1 godzinę, 16 minut temu danielplawgo 163 źrodło 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 2348 dni, 1 godzinę, 26 minut temu danielplawgo 114 źrodło 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 2342 dni, 13 minut temu danielplawgo 150 źrodło 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 2335 dni, 30 minut temu danielplawgo 124 źrodło rozwiń

Wraz z rozwojem aplikacji oraz zwiększaniem się liczby użytkowników, stajemy przed coraz większymi problem związanymi z wydajnością. Szczególnie istotne jest to w momencie, gdy na przykład ruch na stronie jest na tyle duży, że serwer, z którego korzystamy jest wykorzystywany w 100%. Jednym z sposobów, który w miarę szybko daje spore efekty, jest dodanie mechanizmu cachowania często używanych danych. W tym wpisie pokaże Ci bibliotekę CacheManager (https://github...

Źródło: plawgo.pl
Dziel się z innymi:
Jak cachować dane w .NET? Kilka słów o CacheManager oraz Redis - Blog Daniela Plawgo

Narzędzia 2306 dni, 50 minut temu danielplawgo 232 źrodło rozwiń

W aplikacjach bardzo często używamy zewnętrznych zasobów. A to trzeba wykonać zapytanie na bazie danych. Pobrać dane z usługi lub wysłać wiadomość email. Zasoby te charakteryzują się tym, że mogą być przez jakiś czas niedostępne, bo na przykład wystąpił jakiś problem z siecią lub zasób jest zbyt mocno obciążony. W takich sytuacjach zastanawiamy się, czy od razu pokazać użytkownikowi informacje o błędzie, czy może spróbować ponowić operację po jakimś czasie i do...

Źródło: plawgo.pl
Dziel się z innymi:
Jak ponawiać operacje w .NET z wykorzystaniem Polly? - Blog Daniela Plawgo

Inne 2299 dni, 1 godzinę, 20 minut temu danielplawgo 243 źrodło rozwiń

W bardzo wielu aplikacjach w bazie danych zapisujemy ten sam czas jaki przyszedł do nas od użytkownika w formularzu. W przypadku, gdy tworzysz aplikację na rynek polski, takie podejście może okazać się bezproblemowe, bo wszyscy jesteśmy w jednej strefie czasowej i mamy ten sam czas. Problemy zaczynają się, gdy tworzymy aplikację, w której użytkownicy są w różnych strefach . Wtedy takie podejście może się okazać bardzo problematyczne. Dlatego zaleca się, aby po...

Źródło: plawgo.pl
Dziel się z innymi:
Jak automatycznie zmieniać czas lokalny na UTC w ASP.NET MVC? - Blog Daniela Plawgo

Web 2313 dni, 1 godzinę, 42 minuty temu danielplawgo 129 źrodło rozwiń

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 2319 dni, 22 godziny, 55 minut temu danielplawgo 130 źrodło rozwiń

Obietnice szturmem zdobyły uznanie wśród programistów JavaScript dając im lepszą kontrolę nad asynchronicznością. W artykule przedstawiona została natywna implementacja w przeglądarkach internetowych.

Źródło: devenv.pl
Dziel się z innymi:
Obietnice (promises) - podstawy języka JavaScript - DevEnv

Web 2501 dni, 23 godziny, 25 minut temu devenv 188 źrodło 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 2327 dni, 20 godzin, 27 minut temu danielplawgo 128 źrodło 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 2434 dni, 2 godziny, 31 minut temu danielplawgo 78 źrodło 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 2431 dni, 28 minut temu danielplawgo 60 źrodło 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 2381 dni, 20 godzin, 25 minut temu danielplawgo 108 źrodło 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 2375 dni, 17 godzin, 2 minuty temu danielplawgo 96 źrodło rozwiń

1 2... 4 5 6 7 8 9... 12 13

Najaktywniejsi w tym miesiącu