If you have an application that starts throwing one of these
errors, you can usually apply an immediate workaround that fixes it by opening
your application's web.config file and setting the batch="false"
attribute on the <compilation> section:
Listing 1
<configuration>
<system.web>
<compilation debug="false" batch="false"></compilation>
</system.web>
</configuration>
This tells ASP.NET to dynamically compile individual
.aspx/.ascx files into separate assemblies. This avoids the circular
reference issue that triggers the exception.
You can also temporarily fix it by deleting the files within
the "Temporary ASP.NET Files" Cache using the below steps:
Click the Windows Start button, click Run, type
iisreset /stop, and then click OK.
Open the DriveLetter: WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary
ASP.NET Files directory.
Delete all files and all folders in the directory that you
located in step 2.
Click Start, click Run, type iisreset /start, and then click
OK.
More details on these workarounds can be found in Microsoft
KB #934839.
QFE HotFix Patch for these issues now available for
download
As an alternative to applying the above configuration
workaround, you can also now download and apply a Microsoft QFE HotFix patch
that fixes the reported compilation issues we've seen.
The direct download link to this compilation QFE HotFix
patch is here. You can find other commonly requested Visual
Studio and .NET Framework QFE HotFixes on this page here.
Important: People sometimes ask me whether they should
install QFE HotFixes proactively (before they ever seen an issue).
I always recommend against doing this - since QFE hotfixes go through
targeted testing (to verify a specific issue is fixed), and don't go through a
complete product end to end sign-off. As such, I'd recommend only
applying one of if you are running into the specific issue it targets
above.