-
|
A few weeks ago we introduced a beta of a freshly designed http://asp.net website. Today we launched it. Jon , myself, and the team that manages the site took lots of your feedback (lots from the comments of the Beta Blog Post ) and did our best to incorporate as much as we could. This is just the start, and we've got lots of plans for the future including responsive design, more text content, localization, more HTML 5, HD Video, closed captioning and lots more. It is a big site with a thousands and thousands of pages. However, a lot of those pages were hard to find. We're continuing to try to folks what they need in fewer clicks. There's new content for people getting started , including " choosing a technology " videos...
|
-
|
Donut caching, the ability to cache an entire page except for a small region of the page (or set of regions) has been conspicuously absent from ASP.NET MVC since version 2 . Mmmmm, donuts! – Photo by Pzado at sxc.hu This is something that’s on our Roadmap for ASP.NET MVC 4, but we have yet to flesh out the design. In the meanwhile, there’s a new NuGet package written by Paul Hiles that brings donut caching to ASP.NET MVC 3 . I haven’t tried it myself yet, so be forewarned, but judging by the blog post, Paul has done some extensive research into how output caching works. One issue with his approach is that to create “donut holes”, you need to call an action from within your view. That works for ASP.NET MVC, but not for ASP.NET Web Pages. What...
|
-
|
The Backstory: I was thinking since the NuGet .NET package management site is starting to fill up that I should start looking for gems (no pun intended) in there. You know, really useful stuff that folks might otherwise not find. I'll look for mostly open source projects, ones I think are really useful. I'll look at how they built their NuGet packages, if there's anything interesting about the way the designed the out of the box experience (and anything they could do to make it better) as well as what the package itself does. Today, it's imageresizer . Bertrand Le Roy has long been an advocate of doing image resizing correctly on .NET and particularly on ASP.NET. Last week he posted a great post on a new library to choose...
|
-
|
A long while ago I wrote about the potential dangers of Cross-site Request Forgery attacks, also known as CSRF or XSRF. These exploits are a form of confused deputy attack . Screen grab from The Police Academy movie. In that post, I covered how ASP.NET MVC includes a set of anti-forgery helpers to help mitigate such exploits. The helpers include an HTML helper meant to be called in the form that renders a hidden input, and an attribute applied to the controller action to protect. These helpers work great when in a typical HTML form post to an action method scenario. But what if your HTML page posts JSON data to an action instead of posting a form? How do these helpers help in that case? You can try to apply the ValidateAntiForgeryTokenAttribute...
|
-
|
Before I worked for the ASP.NET team as I do now, I worked for MSDN . While I was over there, part of my time was spent working on the http://asp.net team. I led the charge to move the site over to Umbraco , and we did. Over the last two years, we have continually made improvements to the .NET ( asp.net , silverlight.net , windowsclient.net ) sites. In July, the MSDN team announced the release of a new Silverlight site, and today I'm happy to announce the Beta launch of a redesigned ASP.NET website at http://beta.asp.net . This redesign is still a work in progress , but we wanted everyone to see where we are heading with not just a new look and feel, but also improved organization and navigation that will hopefully make content easier to...
|
-
|
Go that way instead - Photo by JacobEnos CC some rights reserved In an ASP.NET web application, it’s very common to write some jQuery code that makes an HTTP request to some URL (a lightweight service) in order to retrieve some data. That URL might be handled by an ASP.NET MVC controller action, a Web API operation, or even an ASP.NET Web Page or Web Form. If it can return curly brackets, it can be respond to a JavaScript request for JSON. One pain point when hosting lightweight HTTP services on ASP.NET is making a request to a URL that requires authentication. Let’s look at a snippet of jQuery to illustrate what I mean. The following code makes a request to /admin/secret/data . Let’s assume that URL points to an ASP.NET MVC action with the...
|
-
|
NOTE: This blog post covers features in a pre-release product, ASP.NET MVC 4 Developer Preview . You’ll see we call out those two words a lot to cover our butt. The specifics about the feature will change and this post will become out-dated. You’ve been warned. All good recipes call for a significant amount of garlic. Introduction Last week I spoke at the //BUILD conference on building mobile web applications with ASP.NET MVC 4 . In the talk, I demonstrated a recipe I wrote that automates the process to create mobile versions of desktop views. Recipes are a great way to show off your lack of UI design skills like me! In this blog post, I’ll walk through the basic steps to write a recipe. But first, what exactly is a recipe? Obviously I’m not...
|
-
|
While all of you Build attendees are making me feel bad because you have a fancy Tablet and I don't (sell me yours!) the folks over here in the "Angle Brackets Team" (I'm trying out some new names. One will stick.) have been busy. Here is a summary of all the items from our team that have been announced and shown at Build this week, all of this will be publicly available today (9/16) along with a some narrative and asides from yours truly. They are listening One of the things I am am personally enjoying in working daily with this build of Visual Studio is that there's dozens (hundreds) of little "mental speed bumps" that are smoothed over. A lot of thought was put into workflow and common scenarios in order to...
|
-
|
If you’re at the BUILD conference in Anaheim, I’ll be speaking in two sessions on Thursday. The first session’s title is a bit of a mouthful. Right now, the Channel 9 link is not up-to-date. Progressively enable the Mobile Web with ASP.NET MVC 4, HTML5 and jQuery Mobile Thursday, 9:00 AM The next generation web is built on HTML5 and JavaScript. You can combine this with jQuery Mobile and give everyone a great experience from tablets to the smallest mobile phone browser. In this session, we’ll see how ASP.NET MVC 4 enables uncompromisingly great experiences on mobile devices when combined with the power of the jQuery Mobile framework. The second talk is a joint talk with Damian Edwards . Building IIS and ASP.NET apps with the power of async Thursday...
|
-
|
I did some basic mobile view engine work for ASP.NET MVC for Mix in 2009 and then created what I thought was a better ASP.NET MVC Mobile ViewEngine in 2010 . Unfortunately, the second one (the "better" one) had a caching bug that only showed itself in Release mode. This last month, Jon, John, Peter and I updated NerdDinner to MVC 3 with Razor and a pile of other new features . One of those new features was jQuery Mobile support and that meant we need to fix this bad Mobile View Engine. Additionally, ASP.NET MVC 4 will include actual supported Mobile Views support , so the pressure was on. However, we wanted to make sure any new MVC 3 Mobile View sample was mostly compatible with whatever scheme ASP.NET MVC 4 uses. The original folder...
|