Audit z Entity Framework Plus

Audit z Entity Framework Plus

Wprowadzenie 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 Read more about Audit z Entity Framework Plus[…]

Entity Framework Automapper oraz projekcja

Entity Framework, Automapper oraz projekcja

Wprowadzenie 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 Read more about Entity Framework, Automapper oraz projekcja[…]

Effort - testy Entity Framework

Effort – testy Entity Framework

Wprowadzenie W ostatnim wpisie poruszyłem temat testowania, a w dzisiejszym wpisie pozostaniemy 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. Istnieją różne rozwiązania tego problemu. Część osób Read more about Effort – testy Entity Framework[…]

EF Plus - aktualizacja wielu obiektów jednym zapytaniem

EF Plus – aktualizacja wielu obiektów jednym zapytaniem

Wprowadzenie Bardzo lubię wykorzystywać Entity Framework w swoich projektach. W szczególności lubię je 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. Są one głównie związane z wydajnością. Szczególnie że niektóre operacje, który wykonalibyśmy w czystym SQLu jednym prostym Read more about EF Plus – aktualizacja wielu obiektów jednym zapytaniem[…]

Migracja schematu bazy danych z Fluent Migrator

Migracja schematu bazy danych z Fluent Migratora

Wprowadzenie W ubiegłym tygodniu pokazałem Ci, w jaki sposób migrować schemat bazy w Entity Framework (zachęcam do przeczytania najpierw tamtego wpisu). W tym wpisie pokażę Ci inną bibliotekę, której 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 Read more about Migracja schematu bazy danych z Fluent Migratora[…]

Migracja schematu bazy danych w Entity Framework

Migracja schematu bazy danych w Entity Framework

Wprowadzenie W obecnych czasach bardzo rzadko tworzy się aplikacje, które nie korzystają z bazy danych. Gdzieś przecież trzeba zapisać dane. Od jakiegoś czasu coraz bardziej popularne stają są bazy nierelacyjne, ale nadal najczęściej używamy baz relacyjnych, takich jak na przykład SQL Server. Jednym z problemów, z jakimi musimy się zmierzyć, jest zmiana schematu bazy danych Read more about Migracja schematu bazy danych w Entity Framework[…]

Jak profilować zapytania w Entity Framework

Jak profilować zapytania w Entity Framework?

Wprowadzenie Entity Framework jest bardzo fajnym narzędziem, znacznie ułatwiającym pracę z bazami danych. Budowanie zapytań SQL na podstawie Linq, tworzenie struktury bazy danych na podstawie obiektów w C# czy mechanizm migracji powodują, że wielu programistów .NET wybiera właśnie Entity Framework. Niestety narzędzie to ma również swoje ciemne strony. Wystarczy chociażby wrócić do wpisu, w którym Read more about Jak profilować zapytania w Entity Framework?[…]

Jak cachować dane w .NET? Kilka słów o CacheManager oraz Redis

Jak cache’ować dane w .NET? Kilka słów o CacheManagerze oraz Redisie

Wprowadzenie Wraz z rozwojem aplikacji oraz zwiększaniem się liczby użytkowników stajemy przed coraz większymi problemami 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 Read more about Jak cache’ować dane w .NET? Kilka słów o CacheManagerze oraz Redisie[…]

Entity Framework - aktualizacja danych bez ich pobierania

Entity Framework – aktualizacja danych bez ich pobierania

Wprowadzenie Dzisiejszy wpis jest inspirowany jednym z ostatnich code review, jakie robiłem. Zauważyłem, że gdy pracujemy z Entity Framework, często niektóre rzeczy zaczynamy robić nieefektywnie względem tego, jakbyśmy zrobili to 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ć Read more about Entity Framework – aktualizacja danych bez ich pobierania[…]

Nbuilder oraz Faker.NET - generowanie danych

Nbuilder oraz Faker.NET – generowanie danych

Testując aplikację, potrzebujemy jakiś danych. Można oczywiście wszystko ręcznie przygotować, ale na dłuższą metę takie podejście jest dość problematyczne. Warto skorzystać z czegoś gotowego. Dzisiaj będę chciał Ci pokazać dwie biblioteki (Nbuilder oraz Faker.NET), które wykorzystuję do generowania danych testowych, a które w połączeniu dają całkiem fajne wyniki. Nbuilder Nbuilder (strona biblioteki) przydaje się, gdy Read more about Nbuilder oraz Faker.NET – generowanie danych[…]