Practical .NET


Serverless C# with Azure Functions: HTTP-Triggered Functions

Last time I looked at the basics of triggers. Let's look at creating an HTTP-triggered function for displaying a greeting based on a target audience.

Speed Up Your ASP.NET MVC Application with Doughnut Hole Caching

The OutputCache attribute is a great way to improve both response time and scaleability, except there are many times when you can’t use it. Here’s how to leverage the HtmlHelper Action method to handle those exceptions.

Turn Off Caching at the Browser

You can force users to always get the most recent version of your ASP.NET Web page by using the last tool you'd expect to handle this: The OutputCache attribute.

Monitor and Respond to Document Store Events in Marten

It's possible to hook into document store events to monitor (and even modify) behavior.

The Best Option for Selecting Related LINQ Objects

Here's the best performing option when you're retrieving the objects at the end of an entity class's navigation property, either when you only want some of the objects or when you only want them some of the time.

Leveraging Contract Technology for Simpler Applications

If you haven’t used the .NET Framework Contract tools to help guarantee code quality, it’s worthwhile to consider integrating them into your work. If you figured that Contracts were all hype, it may be time to see how they could be genuinely useful.

Working with the Properties Window in Visual Studio's Categories View

If you prefer to keep your Properties Window in Categories View, then here's some shortcuts you might find valuable.

It’s Time to Reconsider Using Contracts

Coding by Contract was once the future of programming. It isn’t as popular now as it was even five years ago, at least in the .NET Framework community. But that doesn’t mean you can’t find the related tools useful.

Grouping in LINQ with Methods

Peter follows up -- yet again – on a column on how to group results with LINQ using the SQL-like syntax with the same solution using the method-based syntax. And, no, you're not seeing double.

Introducing: Serverless C# with Azure Functions

Azure Functions get you beyond the traditional client/server approach to app creation, right into the cloud. Let’s first look at triggers.

Controlling Process Flow with the Template Method Pattern

If you have a process that needs to be performed -- but with variations -- then implementing the Template Method pattern will give you simpler, more extensible code. You’ll also recognize this pattern from all the times you work with it in the .NET Framework.

Getting All the Results in LINQ with Methods

Peter follows up on advice for joining collections with LINQ and getting all of the results, but this time, he uses the method-based syntax.

Move Beyond Factory Methods with the Builder Pattern in C#/Visual Basic

When your objects get sufficiently complicated to create, it's time to simplify your life by moving to the Builder pattern. The Builder pattern is not only a great pattern for creating complicated objects, it supports your application's further evolution.

Errors on Unused Sections in ASP.NET MVC Views

If you don't use a section in a View, then you'll get an error. But you may not find out until it's too late.

Checking Up on Your Entity Framework Objects with DbEntityEntry

The Entity Framework DbEntityEntry object lets you do all sorts of things you probably didn't think were possible, including getting the latest data from the database (without losing your current data) and invoking the .NET Framework validation subsystem.

Subscribe on YouTube