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.
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.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With