Conventional Programming with EFCore – Part 2 – Fixing Find

If you didn’t already setup Entity Scaffolding, please checkout Part 1 before continuing. DbSet.Find(Object[]) Although a powerful method, it can cause some problems. Primarily, the lack of compile time checking of the arguments. Usually, there is a bit of double checking during initial use, and then god forbids someone changes the keys there is aContinue reading “Conventional Programming with EFCore – Part 2 – Fixing Find”

Conventional Programming with EFCore – Part 1

When I first took a pass at writing a Framework many years ago, I thought I was so clever being able to use reflection to solve common problems. Then I learned about Expression Trees and more fun but difficult to maintain concepts. At one point I sat down and said to myself, will anyone elseContinue reading “Conventional Programming with EFCore – Part 1”

C# Puzzles – Puzzle #3: Mutable Structs

Every C# developer knows there are classes and structs, and at least once in an interview was asked about boxing. Additionally, they understand the concepts of mutable and immutable. This is where this puzzle will focus today. Note: Scroll selectively to not spoil the results. Lets jump into it. We have a class with anContinue reading “C# Puzzles – Puzzle #3: Mutable Structs”

C# Puzzles – Puzzle #2: Static Generics

For this puzzle, there is a little code snippet at the end that may help you in the future. The puzzle really isn’t super hard to figure out. Unfortunately, it is a either you know it or you don’t. Note: Scroll selectively to not spoil the results. Lets jump into it. What do you expectContinue reading “C# Puzzles – Puzzle #2: Static Generics”

Repository Pattern: Retrospective and Clarification

I read a simple article today about a leadership principle Bezos believes in. It reflects the purpose of Part 1 and Part 2. You really can’t accomplish anything important if you aren’t stubborn on vision, but you need to be flexible about the details because you gotta be experimental to accomplish anything important, and thatContinue reading “Repository Pattern: Retrospective and Clarification”

Typical Anti-Repository Arguments

I have shown a more advanced approach to using the Repository Pattern in the Post: The Repository Pattern isn’t an Anti-Pattern; You’re just doing it wrong. Now, let me address the other typical concerns. Typical arguments are going to be around these factors: Restrictiveness Performance Flexibility Complexity Utility Purpose I find these arguments pretty lackadaisical.Continue reading “Typical Anti-Repository Arguments”

Calling a Pattern an Anti-Pattern is actually an Anti-Pattern

Pick your favorite pattern and search for it followed by “Anti-Pattern”. Some blogger somewhere will misuse that pattern and tell you why it is bad. Yes some patterns don’t achieve everything we desire in quality code today, but that doesn’t mean they are Anti-Patterns. If a pattern achieves what it sets out to do semi-efficientlyContinue reading “Calling a Pattern an Anti-Pattern is actually an Anti-Pattern”

The Repository Pattern isn’t an Anti-Pattern; You’re just doing it wrong.

If you already hate the Repository Pattern, I get it. You had a bad experience with it. Implementing Repos over and over again has no benefits. I 100% agree. I although have not have had the same experience, as I do not recommend that approach. I focus on a zero rework implementation. People don’t giveContinue reading “The Repository Pattern isn’t an Anti-Pattern; You’re just doing it wrong.”