BrowserLink and Post-Cache Substitution don't mix

Stian Lie-Sveen

I work with an ASP.NET application and the last few days I've been getting this annoying error from time to time:

Post cache substitution is not compatible with modules in the IIS integrated pipeline that modify the response buffers. Either a native module in the pipeline has modified an HTTP_DATA_CHUNK structure associated with a managed post cache substitution callback, or a managed filter has modified the response.

No obvious changes to the solution could explain this, in fact I just got back from vacation and got the error before I'd done anything other than update from the repository.

Then I remembered... just before taking vacation, I reinstalled Visual Studio 2013. And... Visual Studio 2013 Update 2 enables BrowserLink by default.

Now Browserlink is a pretty awesome concept, but one of the things it does do is exactly what the error message points at: It modifies the response buffers before the post cache substitution occurs.

So I simply disabled BrowserLink and now my application is happily ever after. How to fix this? Microsoft has deemed this to be "by design" and closed the bug report.

Update: You can disable browserlink for your web site by adding this to your web.config appSettings: <add key="vs:EnableBrowserLink" value="false" />