Strona głównaUżytkownik

cieszak | użytkownik

cieszak
cieszak
151,42
1288 dni, 7 godzin, 40 minut temu
16 kwietnia, 2009
dotnetomaniak.pl

Od wielu lat usługi REST wypierają stare dobre usługi SOAP (a można już chyba nawet powiedzieć, że wyparły). Kiedy zaczynałem tworzyć usługi REST oraz z nich korzystać, miałem w pewnym sensie wrażenia, że robimy krok w tył. W SOAP mieliśmy WSDLa, który opisywał usługę. Dzięki niemu Visual Studio mogło wygenerować wszystkie klasy, które następnie używałem do komunikacji z usługą. W przypadku usług RESTowych nie mamy czegoś takiego z pudełka. Więc bardzo często ...

Źródło: plawgo.pl
Dziel się z innymi:
Swagger - dokumentowanie REST API - Blog Daniela Plawgo

Web 2206 dni, 12 godzin, 42 minuty temu danielplawgo 184 źrodło rozwiń

Dwa ostatnie wpisy na blogu dotyczyły sposób migracji schematu bazy danych. Migracje w Entity Framework oraz Fluent Migrator charakteryzują się tym, że cały proces migracji jest zapisany w klasach za pomocą api, które udostępnia dana biblioteka. Ilość sqla, którą piszemy w tych migracjach jest minimalizowana i sprowadza się głównie do wykonywania jakiś specyficznych rzeczy – np. skopiowania danych z jednego miejsca w drugie. Natomiast dzisiejsza biblioteka (DbU...

Tagi: DbUp, migracja
Źródło: plawgo.pl
Dziel się z innymi:
Migracja schematu bazy danych z DbUp - Blog Daniela Plawgo

Bazy danych i XML 2213 dni, 11 godzin, 16 minut temu danielplawgo 108 źrodło rozwiń

Posted on przez Daniel PlawgoW ostatnim czasie trochę odświeżyłem mój darmowy kurs Visual Studio. Przede wszystkich przygotowałem landing page dla kursu (https://visualstudio.plawgo.pl) oraz poprawiłem kilka drobnych rzeczy.Pracuje również nad nowymi lekcjami i związku z tym postanowiłem przygotować konkurs z ciekawymi nagrodami. Do wygrania są:Roczna licencja na ReSharper Ultimate + Rider Pack (lub inny produkt od JetBrains)2 pakiety 5 godzin konsultacji z moją osobą (https://plawgo.pl/mentoring/), któ...

Źródło: plawgo.pl
Dziel się z innymi:
Kurs Visual Studio oraz konkurs - Blog Daniela Plawgo

Narzędzia 2208 dni, 12 godzin, 47 minut temu danielplawgo 134 źrodło rozwiń

W ostatnim wpisie poruszyłem temat testowania i w dzisiejszym wpisie zostaniemy przy tym temacie. O ile z testowaniem warstwy logiki biznesowej na ogół nie mamy problemów, to już dużo gorzej wygląda to z warstwą dostępu do danych. Entity Framework z pudełka nie umożliwia prostego pisania testów jednostkowych. Są różne rozwiązania tego problemu. Część osób idzie tak naprawdę w testy integracyjne i wykonuje zapytania na realnej bazie. Część osób korzysta z baz da...

Źródło: plawgo.pl
Dziel się z innymi:
Effort - testy Entity Framework - Blog Daniela Plawgo

Bazy danych i XML 2171 dni, 11 godzin, 31 minut temu danielplawgo 196 źrodło rozwiń

W ubiegłym tygodniu pokazałem Ci w jaki sposób migrować schemat bazy w Entity Framework (zachęcam pierw do przeczytania tamtego wpisu). W tym wpisie pokaże Ci inną bibliotekę, którą możesz użyć do migracji schematu bazy, w momencie, gdy z jakiegoś powodu nie możesz użyć Entity Framework. Biblioteka nazywa się Fluent Migrator (https://fluentmigrator.github.io/) i w swoim działaniu jest bardzo podobna do mechanizmu migracji z Entity Framework. Największą różnicą ...

Źródło: plawgo.pl
Dziel się z innymi:
Migracja schematu bazy danych z Fluent Migrator - Blog Daniela Plawgo

Bazy danych i XML 2220 dni, 12 godzin, 57 minut temu danielplawgo 107 źrodło rozwiń

Testy jednostkowe oraz testy integracyjne potrafią bardzo ułatwić wyłapywanie błędów podczas tworzenie aplikacji (w szczególności błędów regresji). Dlatego na ogół bardzo chcemy je dodać do aplikacji, ale niestety często spotykamy się z oporem „góry”, bo pisanie testów zajmuje dużo czasu. Z doświadczenie zauważyłem, że jednym z powodów wydłużania czasu pisania testów są rozbudowane asserty. Dlatego w dzisiejszym wpisie chce Ci  pokazać bibliotekę Fluent Asserti...

Źródło: plawgo.pl
Dziel się z innymi:
Fluent Assertions - przyjemne asserty w testach - Blog Daniela Plawgo

Inne 2177 dni, 11 godzin, 41 minut temu danielplawgo 117 źrodło rozwiń

Dzisiejszy wpis jest zainspirowany kilkoma ostatnimi przypadkami, w których widziałem bardzo rozbudowane switche w aplikacji.  Utrzymanie tego kodu zaczynało sprawiać programistom spore problemy. Zapewne wielokrotnie widziałeś lub widziałaś metody, w których znajdował się jeden wielki switch, gdzie każdy case zawierał następnie zupełnie inny kod niż pozostałe przypadki. Utrzymanie tego, a w szczególności dodanie nowych przypadków zaczyna być wyzwaniem i często ...

Źródło: plawgo.pl
Dziel się z innymi:
Jak zastąpić rozbudowany switch w aplikacji - Blog Daniela Plawgo

Sztuka programowania 2157 dni, 11 godzin, 51 minut temu danielplawgo 374 źrodło rozwiń

W ASP.NET MVC rozbudowane formularze możemy utworzyć na różne sposoby. Na ogół staramy się wyrzucać do oddzielnych plików powtarzające się elementy, aby wykorzystywać je ponownie. Zauważyłem, że większość osób do tego celu wykorzystuje widoki Partial, które niestety często zamiast pomóc powodują dodatkowe problemy. W tym wpisie postaram Ci się pokazać, dlaczego w przypadku formularzy lepiej użyć Editor Templates niż widoków Partial.Przykład Zacznę od przykładu...

Źródło: plawgo.pl
Dziel się z innymi:
Dlaczego Editor Template jest lepszy niż Partial View do tworzenia formularzy? - Blog Daniela Plawgo

Web 2192 dni, 11 godzin, 38 minut temu danielplawgo 162 źrodło rozwiń

Bardzo lubię wykorzystywać Entity Framework w swoich projektach. W szczególności za łatwość i szybkość tworzenia kodu (na przykład za opisywany ostatnio mechanizm migracji). Ale, żeby nie było tak różowo, Entity Framework ma również swoje problemy. Głównie są one związane z wydajnością. Szczególnie, że niektóre operacje, który wykonalibyśmy w czystym SQLu jednym prostym zapytaniem, w Entity Framework wymagają wielu operacji na bazie danych. Taką operacji jest ...

Tagi: .Net, C#, EF
Źródło: plawgo.pl
Dziel się z innymi:
EF Plus - aktualizacja wielu obiektów jednym zapytaniem

Bazy danych i XML 2186 dni, 11 godzin, 58 minut temu rroszczyk 189 źrodło rozwiń

Sposób tworzenia aplikacji webowych zmienia się na przestrzeni czasu. W świecie .NET przez lata kodowaliśmy w ASP.NET MVC, w którym widoki były generowane po stronie serwera. Od jakiegoś czasu idziemy w kierunku, w którym backend udostępnia API, z którego korzysta aplikacja po stronie przeglądarki i która generuje widoki po stronie klienta. W związku z tym zmienił się też sposób testowania aplikacji po stronie serwera. Jednym z dostępnych narzędzi, które możemy...

Źródło: plawgo.pl
Dziel się z innymi:
Postman – testowanie API - Blog Daniela Plawgo

Narzędzia 2115 dni, 11 godzin, 59 minut temu danielplawgo 185 źrodło rozwiń

Dwa tygodnie temu opublikowałem wpis o bibliotece Fluent Assertions, która bardzo ułatwia pisanie assertów w testach (zachęcam pierw do przeczytania tamtego wpisu). Pokazałem jak korzystać z biblioteki oraz jak łatwo można rozszerzać możliwości biblioteki o własne metody. Dzisiaj natomiast pokaże Ci, jak testować kontrolery w ASP.NET MVC za pomocą rozszerzenia o nazwie FluentAssertions.MVC (https://github.com/fluentassertions/fluentassertions.mvc). Poćwiczymy r...

FluentAssertions.Mvc - assercie dla ASP.NET MVC - Blog Daniela Plawgo

Inne 2165 dni, 10 godzin, 5 minut temu danielplawgo 80 źrodło rozwiń

Praca zdalna coraz częściej i „bardziej” wchodzi do naszego zawodu. Sam przez prawie osiem lat pracowałem zdalnie z domu. Teraz natomiast, pracując w olsztyńskim oddziale SoftwareHut, i tak pracuję zdalnie dla klienta z Anglii. Praca zdalna wiąże się z wyzwaniami. W jaki sposób wspólnie debugować aplikacje, gdy jesteśmy oddaleni od siebie o kilkaset kilometrów? Lub programować w parze, aby rozwiązać jakiś problem? Jakiś czas temu Microsoft udostępnił usługę o n...

Źródło: plawgo.pl
Dziel się z innymi:
VS Live Share – łatwiejsza praca zdalna - Blog Daniela Plawgo

Narzędzia 2122 dni, 11 godzin, 49 minut temu danielplawgo 126 źrodło rozwiń

Tworząc aplikację, wcześniej czy później będziemy musieli zaimportować lub wyeksportować jakieś dane. Jednym z formatów, który prawdopodobnie będziemy musieli obsłużyć, będzie plik csv. Można taki import lub eksport zrobić ręcznie, korzystając z takich metod klasy string, jak Join lub Split. Z drugiej strony możemy skorzystać z czegoś gotowego. W swoich projektach, gdy mam pracować z plikami csv, wykorzystuję bibliotekę CsvHelper (https://joshclose.github.io/Cs...

Tagi: csv, csvhelper
Źródło: plawgo.pl
Dziel się z innymi:
CsvHelper – praca z plikami csv - Blog Daniela Plawgo

Bazy danych i XML 2150 dni, 11 godzin, 47 minut temu danielplawgo 144 źrodło rozwiń

Logowanie działania aplikacji jest bardzo przydatne podczas późniejszej analizy tego, co się stało. Na ogół prawie każda aplikacja loguje jakieś informacje. Niestety zauważyłem, że równie często nie do końca dobrze logujemy wiadomości. Jest to szczególnie widoczne w aplikacjach webowych (na przykład w ASP.NET MVC). Przy dużej liczbie użytkowników wiadomości z poszczególnych żądań są wymieszane między sobą, przez co ich późniejsza analiza jest bardzo utrudniona ...

Źródło: plawgo.pl
Dziel się z innymi:
Grupowanie wiadomości w NLogu w ramach żądania HTTP - Blog Daniela Plawgo

Inne 2109 dni, 3 godziny, 25 minut temu danielplawgo 181 źrodło rozwiń

Rozwijanie usługi systemowej stworzonej z domyślnego szablonu w Visual Studio nie jest prostym zajęciem. Szczególnie debugowanie takiej aplikacji sprawia sporo problemów. Nie można z poziomu IDE uruchomić usługi i jej debugować. Trzeba podpinać się pod działający proces. W przypadku gdy chcemy zdebugować start usługi, musimy posiłkować się różnymi dziwnymi konstrukcjami, które zatrzymają start usługi do momentu podpięcia się debugera. W dzisiejszym wpisie będę...

Źródło: plawgo.pl
Dziel się z innymi:
Topshelf – tworzenie usługi systemowej - Blog Daniela Plawgo

Windows 2101 dni, 11 godzin, 18 minut temu danielplawgo 159 źrodło rozwiń

Jako programista .NET bardzo cieszę się z tego, że Microsoft obok rozwoju całej platformy .NET dodaje również nowe rzeczy do samego języka C#. Wszystko po to, aby nam, programistom, pracowało się jeszcze łatwiej i efektywniej – choć nie zawsze wprowadzone mechanizmy wydają się fajne i się je wykorzystuje. Przykładowo pattern matching dodany do switch w C# 7 (jeśli nie wiesz, co to, to w dalszej części wpisu pokażę, czym to jest) jakoś nie przypadł mi do gustu ...

Tagi: C#, C# 8.0, switch
Źródło: plawgo.pl
Dziel się z innymi:
Nowy switch w C# 8.0 - Blog Daniela Plawgo

Sztuka programowania 1996 dni, 13 godzin, 51 minut temu danielplawgo 414 źrodło rozwiń

Kilka tygodni temu pojawił się pierwszy artykuł o frameworku Blazor na blogu. Od tamtego czasu zmienił się status frameworka. Wyszedł z fazy eksperymentalnej i aktualnie jest w wersji Preview. Część Server-side zostanie wydana wraz z .NET Core 3.0 we wrześniu 2019. Na stabilną część Client-side działającą na WebAssembly przyjdzie nam poczekać dodatkowy rok, do momentu wydania .NET 5. Ale i tak myślę, że warto już teraz interesować się tym frameworkiem. W dzisi...

Źródło: plawgo.pl
Dziel się z innymi:
Blazor – użycie Web API - Blog Daniela Plawgo

Web 1989 dni, 13 godzin, 37 minut temu danielplawgo 232 źrodło rozwiń

Myślę, że wsparcie wykorzystywania istniejących bibliotek JavaScript w Blazorze w przyszłości zaważy na tym, czy ten framework odniesie sukces, czy nie. Bogactwo różnorodnych bibliotek w JavaScript zapewnia bardzo duży wybór. Za każdym razem, gdy czegoś potrzebowałem, to pytanie nie brzmiało: „czy jest jakaś biblioteka, która to zrobi?”, tylko: „którą z 20 dostępnych bibliotek wykorzystać?”. Twórcy Blazora pomyśleli o tym, aby łatwo można było z poziomu C# wyw...

Źródło: plawgo.pl
Dziel się z innymi:
Blazor JavaScript Interop - Blog Daniela Plawgo

Web 1982 dni, 13 godzin, 15 minut temu danielplawgo 110 źrodło rozwiń

Posted on przez Daniel PlawgoWprowadzenie Postman jest genialnym narzędziem, bez którego nie wyobrażam sobie pracy nad WebApi. Kilka miesięcy temu opisywałem na blogu jak testować api z wykorzystaniem Postamana. Pokazałem jak wysłać żądania, używać zmiennych oraz zapisywać testowe żądania w kolekcje. Oczywiście Postman oferuje dużo więcej. W tym wpisie pokaże Ci jak można wykorzystać asserty w Postmanie do automatycznych testów, aby wykonywać je później w ramach CI/CD. Dzięki czemu możemy mieć większą ...

Źródło: plawgo.pl
Dziel się z innymi:
Postman - asserty w automatycznych testach - Blog Daniela Plawgo

Web 1919 dni, 13 godzin, 13 minut temu danielplawgo 122 źrodło rozwiń

Posted on przez Daniel PlawgoWprowadzenie Dzisiaj kolejny wpis o Postmanie. W ostatnim pokazałem Ci, w jaki sposób dodawać asserty do żądań w Postmanie, aby weryfikować poprawność działania aplikacji. Na końcu zobaczyłeś, jak uruchamiać testy z wykorzystaniem wbudowanego runnera. Jest on wygodny w momencie, gdy pracujemy nad zmianami w api. Natomiast w celu systematycznej weryfikacji poprawności działania aplikacji sprawdza się średnio. Na szczęście testy można wykonywać automatycznie w ramach buildów ...

Źródło: plawgo.pl
Dziel się z innymi:
Postman – uruchamianie testów w Azure DevOps - Blog Daniela Plawgo

Web 1898 dni, 13 godzin, 11 minut temu danielplawgo 96 źrodło rozwiń

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