I have 3 temporary files being created in obj/debug:
E.g.
- TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
- TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
- TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
(The guids don't seem to change even after a solution clean)
My build is failing because:
SA1633: The file has no header, the header Xml is invalid, or the header is not located at the top of the file.
I don't want to turn the StyleCop rule off. How do I find out what is creating these temporary files?
The site is an asp.net MVC 4 site, with 5 models, 4 controllers, 2 classes, 2 aspx web pages and 1 service reference, which numerically don't seem to tally with the 3 files.
Any pointers?
Edit: If I change framework from 4.5 back to 4 these files go away and the build is successful.
My version of StyleCop is 4.4, I'm more than open to finding a way to get it to ignore obj/debug
The 3 files with "TemporaryGeneratedFile_" prefix are auto-generated by the Microsoft.WorkflowBuildExtensions.targets file most likely imported via the chain:
They are generated under the intermediate output path pointed by the
$(IntermediateOutputPath)
MSBuild property, usually something likeobj\debug
. One way to deal with the StyleCop warnings/errors about these auto-generated files is to tell StyleCop to skip any *.cs files under the$(IntermediateOutputPath)
. For example, include the following item in your project:ExcludeFromStyleCop
is an item name recognized by the StyleCop.targets file to exclude files from analysis during a build (at least for StyleCop 4.7). The double star**
is MSBuild syntax for searching recursively under a folder.The new item might show up in the Solution Explorer in Visual Studio. If that is undesirable it can be hidden by using the 'Visible' item metadata:
Similar approach can be used to exclude other files if necessary. I hope that helps.
In the parsers block of a StyleCop.Settings file add an entry for these files: The value is a regex, so a tighter one for matching a guid could be used, but these meets my need for now.
I have recently ran into this same problem out of nowhere.
For me, I was able to overcome this by opening the .csproj files for each project, then remove the following line:
After re-opening the solution, it was able to build everything without an error.
I solved this issue by going to the project solution (whose build) was giving this error.
they look like this in the csproj file:
I faced a similar problem and solved it as follow:
Deleted debug in bin folder in addition to debug in obj folder rebuild and it worked
I was helping a colleague who had added a new project to our main VS solution and who got these same 3 errors. I went through the suggested steps above with him but did not have any success in fixing it. After this, I discovered he had missed one of the steps we perform when adding a new project within our solution that uses Code Analysis and StyleCop. He had forgot to add the Settings.StyleCop file to his project :)