asp.net

Real-World CQRS/ES with ASP.NET and Redis Part 3 - The Read Model

NOTE: This is Part 3 of a five-part series in which I detail how a real-world ASP.NET Web API app using the Command-Query Responsibility Segregation and Event Sourcing (CQRS/ES) patterns and the Redis database might look. Here's Part 1 of this series. The corresponding repository is over on GitHub. In Part 1, we talked about why we might want to use Command-Query Responsibility Segregation and Event Sourcing (CQRS/ES) in our apps, and in Part 2 we defined... Read more >

Real-World CQRS/ES with ASP.NET and Redis Part 2 - The Write Model

NOTE: This is Part 2 of a five-part series in which I detail how a real-world ASP.NET Web API app using the Command-Query Responsibility Segregation and Event Sourcing (CQRS/ES) patterns and the Redis database might look. Here's Part 1 of this series. The corresponding repository is over on GitHub. Now that we've discussed why we want to use CQRS (Command-Query Responsibility Segregation) and ES (Event Sourcing) for this system, we can now start going into detail about how... Read more >

Introducing the Daily Design Pattern

Lately I've been on something of a design patterns kick, from realizing that patterns are tools, not goals to developing and recording an extensive course for my employer and my fellow programmers at my current employer. It's been enlightening, to say the least. In fact, I think I'm suffering from pattern fever, as it were, because I've started noticing them everywhere, even in places where I couldn't previously see that they existed. To help me deal with this, I began... Read more >

Setting Up Dependency Injection in Web API with StructureMap

Up until recently I hadn't really used any Dependency Injection (DI) frameworks in my ASP.NET projects, largely due to them being rather intimidating to set up the first time. I mean, I barely grasp the concept of DI, so the thought of trying to implement it on my own is worrisome. Recently, though, my group had a requirement that forced us to consider using a DI framework (which I wrote about in Custom Validation in ASP.NET Web API... Read more >

Custom Validation in ASP.NET Web API with FluentValidation

Validation is one of the key components in any web app. After all, we should never trust any input to our applications, ever. Up until now, my group has been building MVC-based web apps, in those apps we've been content to use built-in or custom-built validation solutions for any validation-type procedures we needed to write. Now, though, we've transferred over to building a web service written in ASP.NET Web API, and the old validation structure we had in place... Read more >

HTTP Status Codes in ASP.NET Web API - A Guided Tour

Good morning everyone, and welcome to the new HTTP Status Codes in ASP.NET Web API tour here at Exception Not Found! My name is Reggie, and I'll be your tour guide today. Those of you who have taken our Exception Handling tour, welcome back! For those of you who are new to our facility, thank you for visiting us. WikCon UK 2012 Science Museum tour 6 from Wikimedia, used under license First off, I'd like to introduce my brilliant... Read more >

Using HTTP Methods (GET, POST, PUT, etc.) in Web API

My group has been studying ASP.NET Web API for a major project we're working on, and part of learning about this tech stack is studying how HTTP works, which has been a nice refresher for us. A couple of my teammates asked me to clarify the HTTP Methods (e.g. GET, POST, PUT, DELETE, etc) we were going to use for specific actions, and I wanted to learn more about them. Hence, this post. Come along with us as... Read more >

What are Areas? - ASP.NET MVC Demystified

ASP.NET MVC relies on certain conventions (both naming and placement) to properly route requests and return views and view models. One of the ways it allows us programmers to manage these conventions is with the use of Areas, which are modules within an MVC project that exist with their own controllers, views, and actions. Let's learn how we can add Areas to an existing project, and what their separation from the main project allows us to do. What are... Read more >