向WPF应用程序添加资源会导致生成错误

Ive*_*ach 7 c# wpf

我正在阅读《 Head First C#》一书,在向窗口添加资源时始终遇到问题。在添加新资源时,在我创建的任何新WPF应用程序上,这都是100%可重复的错误。解决此问题的唯一方法是注释掉资源,构建和取消注释,如下面的MVCE中所述。包含图像以证明这不是假设或理论上的情况。

在WPF项目中添加资源文件并使用它的正确步骤是什么?

我正在使用Visual Studio Community 2017:版本15.9.9 目标框架:.NET Framework 4.6.1


MVCE:

  1. 创建一个新的WPF应用程序。添加课程:

    //MyDataClass.cs
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace XAMLBuildErrorExample
    {
        class MyDataClass
        {
            public string Foo { get; set; }
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 在MainWindow.xaml中添加资源

    //MyDataClass.cs
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace XAMLBuildErrorExample
    {
        class MyDataClass
        {
            public string Foo { get; set; }
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  3. 尝试建立。错误“标记'MyDataClass'在XML名称空间'clr-namespace:XAMLBuildErrorExample'中不存在。第11行位置10。”:

    在此处输入图片说明

  4. 注释掉资源。构建成功:

    在此处输入图片说明

  5. 取消注释资源。构建成功,但之前失败:

    在此处输入图片说明

  6. 由于第一张图像中的错误,随后对溶液进行的任何清洗都使构建无法进行。

Ive*_*ach 1

看来问题与最初的计算机有关。

在另一个工作站 VS Community 2017 版本 15.9.11 上进行测试,构建成功,没有任何问题。构建>清理>构建没有问题。