dotnetomaniak.pl

Strona głównaUżytkownik

danielplawgo | użytkownik

danielplawgo
danielplawgo
8 101,27
9 godzin, 41 minut temu
15 kwietnia, 2009
dotnetomaniak.pl

W poprzednim wpisie pokazałem, w jaki sposób zapisać historię zmian obiektów w Entity Framework z wykorzystaniem mechanizmu Audit z Entity Framework Plus. W dzisiejszym wpisie pokażę, w jaki sposób skonfigurować ten mechanizm, aby zapisywał te informacje, których potrzebujemy, w odpowiedni sposób.Modyfikacja przykładu W tym wpisie będę bazował na przykładzie z wcześniejszego wpisu, ale go odrobinę zmieniłem. Do klasy Product dodałem dwie nowe właściwości (Des...

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

Bazy danych i XML 14 godzin, 44 minuty temu danielplawgo 35 rozwiń

Historia zmian danych w aplikacji wcześniej czy później pojawi się w każdym projekcie. Do tego problemu można podejść na różne sposoby – możemy samemu coś wymyślić lub skorzystać z czegoś gotowego. W przypadku gdy korzystamy z Entity Framework, możemy użyć mechanizm audytu z darmowego rozszerzenia Entity Framework Plus. W dzisiejszym wpisie pokażę podstawy korzystania z tego mechanizmu, natomiast za tydzień rozbudujemy jego możliwości.Problem W tworzonych prze...

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

Bazy danych i XML 8 dni, 13 godzin, 10 minut temu danielplawgo 173 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 14 dni, 13 godzin, 8 minut temu danielplawgo 138 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 22 dni, 5 godzin, 14 minut temu danielplawgo 122 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 28 dni, 13 godzin, 49 minut temu danielplawgo 167 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 35 dni, 13 godzin, 38 minut temu danielplawgo 120 rozwiń

Od wielu lat używam viewmodeli do przekazywania danych do widoku – niezależnie od tego, czy to aplikacja desktopowa w WPF, czy webowa w ASP.NET MVC. Do tego jeszcze Automapper do mapowania danych na viewmodele. Niestety mapowanie z wykorzystaniem metody Map obiektów z Entity Frameworka bardzo często ma swoje negatywne konsekwencje (na ogół pobieramy zbyt dużo danych do aplikacji). Jednym z rozwiązań tego problemu jest skorzystanie z metody ProjectTo z Automappe...

Źródło: plawgo.pl
Dziel się z innymi:
Entity Framework, Automapper oraz projekcja - Blog Daniela Plawgo

Bazy danych i XML 43 dni, 13 godzin temu danielplawgo 246 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 63 dni, 13 godzin, 36 minut temu danielplawgo 136 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 70 dni, 13 godzin, 41 minut temu danielplawgo 358 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 78 dni, 11 godzin, 55 minut temu danielplawgo 72 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 84 dni, 13 godzin, 21 minut temu danielplawgo 192 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 90 dni, 13 godzin, 31 minut temu danielplawgo 111 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 99 dni, 13 godzin, 48 minut temu rroszczyk 182 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 105 dni, 13 godzin, 28 minut temu danielplawgo 150 rozwiń

Dzisiejszy post będzie trochę inny niż większość. Temat, który poruszę nie jest może jakoś mocno praktyczny i nie wykorzystasz go każdego dnia. Ale z drugiej strony może posłużyć jako ciekawy pomysł na pytanie rekrutacyjne, dlatego warto się nim zainteresować 🙂 Na początku zastanówmy się, czy klasa faktycznie może być prywatna. Chwila zastanowienia i prawdopodobnie myślisz sobie, że chyba nie. Po co w ogóle coś takiego byłoby potrzebne? Odpalasz Visual Stu...

Źródło: plawgo.pl
Dziel się z innymi:
Prywatna klasa? - Blog Daniela Plawgo

Inne 111 dni, 13 godzin, 1 minutę temu danielplawgo 275 rozwiń

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 119 dni, 14 godzin, 32 minuty temu danielplawgo 175 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 121 dni, 14 godzin, 37 minut temu danielplawgo 130 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 126 dni, 13 godzin, 6 minut temu danielplawgo 101 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 133 dni, 14 godzin, 46 minut temu danielplawgo 101 rozwiń

W obecnych czasach bardzo rzadko tworzy się aplikacje, które nie korzystają z bazy danych. Gdzieś trzeba zapisać dane. Od jakiegoś czasu coraz bardziej popularne stają są bazy nierelacyjne, ale dalej najczęściej używamy baz relacyjnych, takich jak na przykład SQL Server. Jednym z problemów z jaki musimy się zmierzyć jest zmiana schematu bazy danych na przestrzeni czasu. A to musimy dodać miejsce na nowe dane. Usunąć już istniejące. Czy też zmienić strukturę, ab...

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

Bazy danych i XML 140 dni, 14 godzin, 35 minut temu danielplawgo 165 rozwiń

1 2 3 4 5... 11 12