WPF设计器错误:frameworkName不能为空字符串

本文关键字:不能 字符串 frameworkName 错误 WPF | 更新日期: 2023-09-27 18:19:28

最近,我的VS2012设计器没有任何明显的原因,未能在项目中打开和xaml文件。他们以前都工作得很好。我没有更改项目设置或安装vs更新(使用更新4)。

我得到的错误是:System.ArgumentException:参数"frameworkName"不能为空字符串。

我也看到过类似的问题,并试图删除我的临时文件夹以及切换目标框架版本,但都无济于事!

有什么建议吗?把我的头发都扯掉了。

更新:我注意到,当我在解决方案中删除对其他项目的引用时,设计器会加载。我需要这些参考,所以这不是一个解决方案,但也许它暗示了

WPF设计器错误:frameworkName不能为空字符串

的原因

C++/CLR项目正在临时目录中使用一个cpp文件,例如.NETFramework,Version=v4.6.AssemblyAttributes.cpp(取决于所使用的框架版本)。通常这个文件看起来像:

#using <mscorlib.dll>
[assembly: System::Runtime::Versioning::TargetFrameworkAttribute(L".NETFramework,Version=v4.6", FrameworkDisplayName=L".NET Framework 4.6")];

但有时它会被破坏,字符串为空。只需打开它并从相应的cs文件中复制字符串。

我在我的项目中添加了一个预构建步骤,所以如果字符串为空,我会得到一个错误:

findstr /C:".NETFramework,Version=v4.6" "%temp%'.NETFramework,Version=v4.6.AssemblyAttributes.cpp" > nul