WHAT IS MVC-CONTROLLERTYPECACHE.XML IN MVC

Elena Glibart

Total Post:42

Points:296
Posted by  Elena Glibart
 929  View(s)
Ratings:
Rate this:

While debugging ASP.NET MVC source i found "MVC-ControllerTypeCache.xml" file is used. But i am not able to understand the use of this file.I mean where is this file stored? How asp.net MVc makes use of this file? Please help.

  1. Lillian Martin

    Post:27

    Points:189
    Re: what is MVC-ControllerTypeCache.xml in MVC

    The file is used to cache controller types to avoid expensive reflection lookups. It is dynamically generated and stored in the c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\NAMEOFYOURAPP\xxxxx\xxxxxxxx\UserCache\ folder.

    It's handled by the TypeCacheUtil internal class that you could find in the TypeCacheUtil.cs in the ASP.NET MVC source code.

    Here's an example of how this file might look like:

    <?xml version="1.0" encoding="utf-8"?>

    <!--This file is automatically generated. Please do not modify the contents of this file.-->

    <typeCache lastModified="04/01/2012 16:35:03" mvcVersionId="3cff62e5-ef21-4e58-897f-d0f1eafd3beb">

      <assembly name="Custom.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null">

        <module versionId="0bd9573a-7a89-4eab-b33d-cc92573fc2ba">

          <type>APPNAME.Controllers.BaseController</type>

        </module>

      </assembly>

      <assembly name="APPNAME.BusinessLogic, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null">

        <module versionId="3fb0cce6-10dd-43d3-a44c-00046017b574">

          <type>APPNAME.BusinessLogic.Controllers.AssetsController</type>

          <type>APPNAME.BusinessLogic.Controllers.HomeController</type>

        </module>

      </assembly>

      <assembly name="MvcContrib, Version=2.0.36.0, Culture=neutral, PublicKeyToken=null">

        <module versionId="889dd733-c7a0-4ae6-8f50-934f417174ea">

          <type>MvcContrib.PortableAreas.EmbeddedResourceController</type>

          <type>MvcContrib.SubController</type>

        </module>

      </assembly>

    </typeCache>

    There's also the MVC-AreaRegistrationTypeCache.xml which is used to cache areas.

Answer

NEWSLETTER

Enter your email address here always to be updated. We promise not to spam!