Monthly Archives: June 2011

ASP.NET MVC Resuming Actions

(Update 2014-12-09: I’ve created a WebApi based library that leverages the System.Net.Http classes to do all the parsing. The code is very simple and much easier to support. I’d recommend trying that first. It’s a lot easier to support.)

This is to announce my new CodePlex project Resuming Action Results for ASP.NET MVC. Or MVC Resuming Actions. Or something else even more clever and catchy. Oh, and it’s already on the NuGet official feed to check out.

The History

Some time ago I started a project called Media Streaming MVC. The project was an early attempt to give ASP.NET MVC developers the ability to easily expose dynamic, routable resources as progressive-download compliant. It was just an ActionFilter and some ActionResults with code to parse HTTP Request Headers and construct the appropriate response.

That project was developed very rapidly as a proof of concept for a StackOverflow question I had tried to answer. Over the past few months I grew increasingly unhappy with the implementation. I knew I wanted to bring it more in line with the way MVC FileResult actions were called and give it a major overhaul. Unfortunately every time I sat down to take a serious look at how I could accomplish these goals, I got overwhelmed and let my attention wander to something less challenging.

Finally I made the decision that there was really no way to clean up the project, make it easier for developers to use and retain any sort of compatibility with existing code. I made the decision to cut the cord and start fresh with the lessons I’ve learned, the feedback I’d gotten and my expanded experience with the ASP.NET MVC platform.

Continue reading

Required .NET Micro Framework (NETMF) Deployment Files

I recently put a project up for bid on ELance to get support added for resolving .NET Micro Framework (NETMF) libraries to be dynamically discovered by NuGet when building packages. This support already seems to exist for regular .NET Framework projects but NETMF projects have a unique build and output structure.

The winner of the bid needed to know which of the files output from a NETMF project should be put in the NuGet package. After a couple hours of absently searching I was unable to find a definitive, authoritative answer. The files I identified through trial-and-error are shown in the following images.

By default, a NETMF project will build to a bin directory. Taking a look at the Release folder for MicroLinq we see this output structure:

Continue reading

National Give Camp Days | Oct 21-23 2011

GiveCamp Logo

If you’ve never heard of a give camp you should read into it. The gist of a camp is simple: find charities that need IT solutions, gather up some developers and designers and spend the weekend building solutions.

These camps have seen rising popularity and now Microsoft is throwing some corporate weight behind these events as well. Take a look at the announcement on GiveCamp.org to see what resources Microsoft is offering.

Give Camps are not only a great way for knowledge workers to contribute to their community but it’s a really nice way to make connections with like-minded people. I would encourage everyone to keep an eye out to see if a Give Camp is being organized nearby.

Graciously yours — for the weekend,
-Erik

SharePoint 2007 Export to Excel Failure

SP2ExcelSchemaError

Cannot get the list schema column property from the SharePoint list.

Here’s an interesting problem I encountered at one of my clients: a SharePoint 2007 SP2 list which previously exported to Excel just fine was now producing the above error every time. Adding insult to injury this started happening after someone accidentally deleted a column from the list which was critical to the event receivers we created.

Having only the missing, and reconstructed, field as a guide, we found hiding the column from the view before export would allow the export to succeed. Armed with that knowledge I started searching like crazy. I found site after site telling me this happens with Date fields. The default value had been changed and to fix the error simply open the field, set the default value to something rational like 12/12/2008, save it, edit it and clear the value back out. Other sites advocated converting the Date field to Single Line of Text and then convert back.

While we have 26 date fields in this custom list, that wasn’t the column that was causing the problem. The faulting column was a lookup to another list. Finally after a few hours of searching I came across this awesome post. Specifically:

7. Lookup column points to a calculated field. Changed the lookup column to not point to calculated field but to a Single Line of Text field and the problem went away.

Continue reading