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.
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.
Azure Functions get you beyond the traditional client/server approach to app creation, right into the cloud. Let’s first look at triggers.
- By Jason Roberts
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.
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.
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.
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.
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.
If you're passing an anonymous object to an HtmlHelper method (to ActionLink, for example), you might want to consider using that anonymous object to eliminate one of the other parameters.
If you're not using the Entity Framework DbCollectionEntry object when working with an entity class's related objects, then your application is running too slow. Using DbCollectionEntry lets you asynchronously retrieve related objects and get only the objects you want.
If, after pressing F5, you've ever found yourself adjusting the size of your browser window, then this tip is for you. But you shouldn't be surprised if it doesn't work.
Entity Framework Core doesn't have lazy loading (at least, not yet). But you can fake it by using explicit loading, though it doesn't work quite the way you might want. In fact, it's probably a good idea to use this in Entity Framework 6.
Some questions can only be answered by organizing your data into groups and then finding groups that contain particular members or have particular properties.
Complex queries can be solved with a combination of simpler LINQ queries, anonymous objects and the Group/By/Into clauses. Using Group/By/Into will also give you the best possible performance for those complex queries.
You don't have to keep all your configuration settings in your config file. There are even some benefits to exporting sections to separate files.