[英]VS2012 Express for Web: Source file 'C:\Users\xxx\AppData\Local\Temp\.NETFramework,Version=v4.5.AssemblyAttributes.cs' could not be found
[英]Why does Visual Studio generates the following file .NETFramework,Version=v4.5.AssemblyAttributes.cs in the temp folder
为什么 Visual Studio 在构建解决方案时会在当前用户的临时文件夹C:\\Users\\[USERNAME]\\AppData\\Local\\Temp
中生成以下文件.NETFramework,Version=v4.5.AssemblyAttributes.cs
?
该文件的内容如下所示:
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.5", FrameworkDisplayName = ".NET Framework 4.5")]
这个问题出现在我的脑海中,因为我在重新启动我的 PC 时遇到了这个文件丢失的问题,请参阅Visual Studio Rebuilds unmodified projects time after a PC reboot 。
为什么Visual Studio会在temp文件夹中生成如下文件.NETFramework,Version=v4.5.AssemblyAttributes.cs
既然你对生成这个文件的原因感兴趣,我建议你可以查看一下这个文档:
MSBuild:由于生成的 AssemblyAttributes.cs 而不必要的重建
Kirill Osenkov 在那篇文章中使用了一个例子来解释为什么在临时文件夹中生成文件。
同样,我们可以知道在那篇文章中生成此文件后那些不必要的重建的原因以及如何解决此问题。
因此, csproj
添加到您的csproj
文件中:
<PropertyGroup>
<TargetFrameworkMonikerAssemblyAttributesPath>$([System.IO.Path]::Combine('$(IntermediateOutputPath)','$(TargetFrameworkMoniker).AssemblyAttributes$(DefaultLanguageSourceExtension)'))</TargetFrameworkMonikerAssemblyAttributesPath>
</PropertyGroup>
希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.