gpt4 book ai didi

visual-studio - 如何为子目录中的 C# 文件编写 DependentUpon 子句?

转载 作者:行者123 更新时间:2023-12-04 06:00:15 24 4
gpt4 key购买 nike

我们试图让我们的 C# 应用程序编译和运行

  • Windows 上的 Visual Studio 10(带有 Microsoft 编译器)和
  • 在 Linux 上使用 gmcs 进行 MonoDevelop

  • 但是,在 .csproj 中类似这样的部分文件(对于 Visual Studio):

    <Compile Include="Foo\Bar.cs" />
    <EmbeddedResource Include="Foo\Bar.resx">
    <DependentUpon>Bar.cs</DependentUpon>
    </EmbeddedResource>

    在使用 MonoDevelop/gmcs 之前必须进行如下更改
    (如果没有,在运行时, resources.GetObject() 将抛出 MissingManifestResourceException ):

    <Compile Include="Foo\Bar.cs" />
    <EmbeddedResource Include="Foo\Bar.resx">
    <DependentUpon>Foo\Bar.cs</DependentUpon>
    </EmbeddedResource>

    如何将其重写为他们都接受的形式?
    (当然,只是删除 DependentUpon 元素。)

    最佳答案

    同时,我研究了几种处理这种情况的方法。

    例如,it is apparently possible添加 Condition值为 $(VisualStudioVersion) != '' 的属性为了使它们以是否使用 Visual Studio 为条件。

    然而,一时兴起(阅读 this answer 后)我尝试了一些完全不同的东西:我替换了嵌套的命名空间

    namespace Baz
    {
    namespace Bar
    {
    [...]
    }
    }

    带点命名空间表示法:
    namespace Baz.Bar
    {
    [...]
    }

    瞧, MissingManifestResourceException不再存在,即使是原来的 DependentUpon条款。

    问题解决了,但我不知道为什么。

    关于visual-studio - 如何为子目录中的 C# 文件编写 DependentUpon 子句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19039382/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com