title: HTML 5 Application Cache IE10/11 AppCache Fatal Error when Chrome and Android are working
body: <p>I created a simple test ASP.NET MVC application trying to use the Application Cache.  Chrome seems to work fine, however in IE 10/11, it is giving us the following messages when trying to download the cache. Any ideas or sample where this is working?</p>
  
  <p><img src="https://i.stack.imgur.com/bdNVn.png" alt="IE AppCache Fatal Errors"></p>
  
  <p>I have tried a number of things including a smaller file to download.  I saw there is a limit that can cause a similar error.</p>
  
  <p>Manifest </p>
  
  <pre><code>CACHE MANIFEST
  #VERSION 9
  
  CACHE:
  /Content/site.css
  
  NETWORK:
  *
  
  FALLBACK:
  </code></pre>
  
  <p>Index View</p>
  
  <pre><code>@{
      Layout = null;
  }
  
  &lt;!DOCTYPE html&gt;
  
  &lt;html manifest="home/manifest"&gt;
  &lt;head&gt;
      &lt;meta name="apple-mobile-web-app-capable" content="yes" /&gt;
      &lt;meta name="apple-mobile-web-app-status-bar-style" content="black" /&gt;
      &lt;meta http-equiv="CACHE-CONTROL" content="NO-CACHE" /&gt;
      &lt;meta http-equiv="EXPIRES" content="0" /&gt;
      &lt;meta http-equiv="PRAGMA" content="NO-CACHE" /&gt;
      &lt;title&gt;Offline Test&lt;/title&gt;
      &lt;link rel="Stylesheet" href="/Content/site.css"
            type="text/css" /&gt;
      &lt;script src="/Scripts/jquery-1.10.2.min.js"
              type="text/javascript"&gt;&lt;/script&gt;
      &lt;script&gt;
          $(function () {
  
          });
      &lt;/script&gt;
  &lt;/head&gt;
  &lt;body&gt;
  
  &lt;/body&gt;
  &lt;/html&gt;
  </code></pre>
  
  <p>MVC Controller</p>
  
  <pre><code>[OutputCache(Duration = 0, NoStore = true)]
  public class HomeController : Controller
  </code></pre>
  
  <p>MVC Action</p>
  
  <pre><code>    public ContentResult Manifest()
      {
  
          Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache);
          return new ContentResult
          {
              ContentType = "text/cache-manifest",
              Content = RenderPartialViewToString("Manifest"),
               ContentEncoding = System.Text.Encoding.UTF8
  
          };
  
          // Doesn't work.  Content type is still html
          //Response.ContentType = "text/cache-manifest";
          //Response.ContentEncoding = System.Text.Encoding.UTF8;
          //Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache);
          //return PartialView();
      }
  </code></pre>
  
  <p>I tried adding a SetNoStore() call in the Application_EndRequest handler but it didn't make any difference.</p>
  
  <pre><code>    public override void Init()
      {
          base.Init();
  
          EndRequest += Application_EndRequest;
      }
  
      private void Application_EndRequest(object sender, EventArgs e)
      {
          HttpContext.Current.Response.Cache.SetNoStore();
      }
  </code></pre>
  
  <p>Thanks!</p>