When it comes to performance developers often need to turn to partial page caching. This report looks at the current state of caching in ASP.NET and introduces a new project for MVC 3 called MvcDonutCaching.
StackExchange is built on the ASP.NET and SQL Server stack. Recently, Sam Saffron and Marc Gravell blogged about their experience identifying and solving a performance problem that was finally traced to the .NET GC GEN-2 objects. There is a lot to be taken away from their experience for everyone tuning performance for applications in production.
ASP.NET MVC is designed with extensibility in mind and almost every part of processing pipeline is extensible using your own providers to replace the standard implementation. Simone Chiaretta, in his blog post “An Introduction to ASP.NET MVC Extensibility” gives an introduction to various stages in the ASP.NET MVC Pipeline, and a brief explanation of how extensibility comes into picture.
In keeping with their annual cadence, Microsoft has begun work on the next version of ASP.NET MVC. Areas of emphasis include smoothing out the development and deployment workflow, sharing more features with Web Forms, improving AJAX support, and offering a better story for HTML 5 on mobile and tablet devices.
Stack Exchange has released the ASP.NET MVC profiler that is used by Stack Overflow and its sister sites. MVC Mini Profiler is an internal profiler specially designed to support database-backed websites.
Jon Galloway is researching dynamic ASP.NET MVC 3 models using Mono’s Compiler as a Service. Meanwhile Karsten Januszewski is looking into deserialized JSON in lieu of statically typed models.
The first keynote for MIX just concluded with lots of web-platform goodness including a new drop of ASP.NET MVC 3 that includes support for HTML 4 development and a preview of IE 10 running on an ARM processor. More updates from MIX will be available throughout the week.
Steve Sanderson recently introduced MVC Scaffolding, a customizable code generation tool for ASP.NET MVC 3. MVC Scaffolding uses a simple command-line interface to automatically generate code based on templates. Standard templates allow for automated generation of many common elements, including Views, Actions, and Unit Test stubs.
While ASP.NET MVC has made great strides in making development easier, in a post titled “ASP.NET MVC Is the New ASP” Michael Taylor argues that it actually makes it harder on user interface designers.
Last month Vladimir Kelman asked if it were possible to use F# with the new Razor view engine. After talking with Scott Guthrie and Marcin Dobosz we learned that it is possible, if you want to put in the effort to build all necessary plugins yourself.
Nearly a decade ago Microsoft gambled big on WebForms and static typing. With the dial cranked all the way over to full encapsulation, each page could almost be treated as its own program. In the intervening years the industry has largely gone in the other direction, favoring separation of concerns over encapsulation and late binding over early binding. Now Microsoft is doing the same.
Microsoft’s ASP.NET team has taken the Agile philosophy of Deploy Early, Deploy Often to heart. Close on the heels of ASP.NET MVC 2, version 3 beta has already been approved for production use. With a whole host of promising new features including the Razor syntax, this will be a hard release to ignore.
Although ASP.NET MVC 3 Preview 1 has not been announced yet, the framework can be downloaded from Microsoft downloads. The list of new features include: Dependency Injection, Razor View Engine, Dynamic View and ViewModel properties, and Global Filters.
WebMatrix is a free tool from Microsoft putting together a web server, ASP.NET + Razor, SQL Server CE and an IDE for creating simple websites.
Optional parameters have always been part of .NET, but with C# unwilling to support it, using them was generally considered taboo unless work with COM libraries. Now that C# 4 does support them, we are starting to see them used for a lot more than just legacy code. Other uses include interoperability with dynamic languages, immutable data structures, and various parts of ASP.NET MVC.