Ken
Ken

Reputation: 603

What is ResolveAssemblyReference.cache?

What is the file ResolveAssemblyReference.cache used for and does it need to be checked in?

Upvotes: 55

Views: 28881

Answers (2)

Amit Ghave
Amit Ghave

Reputation: 69

It is not needed to be checked in, so to exclude it from git, add the obj folder, for "obj\debug", to be excluded during git processes which will exclude it properly.

Upvotes: 4

Hans Passant
Hans Passant

Reputation: 942109

It is a file produced by the ResolveAssemblyReference build target. MSDN has this to say about it:

Visual Studio attempts to execute targets with certain names when it loads a project. These targets include Compile, ResolveAssemblyReferences, ResolveCOMReferences, GetFrameworkPaths, and CopyRunEnvironmentFiles. Visual Studio runs these targets so that the compiler can be initialized to provide IntelliSense, the debugger can be initialized, and references displayed in Solution Explorer can be resolved. If these targets are not present, the project will load and build correctly but the design-time experience in Visual Studio will not be fully functional.

If I interpret this correctly, I'd say that the file is used to help the IDE provide proper IntelliSense and assembly reference status in the References node. It is a fairly expensive operation since there are potentially a lot of assemblies that can be referenced. So instead of doing this repeatedly, the .cache file can help make this quick. Deleting it isn't an issue, it will be recreated when the project is reloaded.

Upvotes: 46

Related Questions