Msbuild 如何在.Net标准项目中使用目标标记内部包含EmbeddedResource?

Msbuild 如何在.Net标准项目中使用目标标记内部包含EmbeddedResource?,msbuild,.net-standard-2.1,Msbuild,.net Standard 2.1,我想将动态生成的resx文件添加到我的.Net标准项目中。如果在目标中使用嵌入的资源标记,下面的脚本将不起作用 <Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ResxFileToInclude Include="D:\WS\Latest\Build\x64\Release\AFS.resx"/> </ItemGroup>

我想将动态生成的resx文件添加到我的.Net标准项目中。如果在目标中使用嵌入的资源标记,下面的脚本将不起作用

<Project Sdk="Microsoft.NET.Sdk">
    <ItemGroup>
        <ResxFileToInclude Include="D:\WS\Latest\Build\x64\Release\AFS.resx"/>
    </ItemGroup>
    <Target Name="ResxInclude" AfterTargets="Compile">
        <ItemGroup>
            <EmbeddedResource Include="@(ResxFileToInclude -> '%(RelativeDir)%(Filename).resx')" Type="Resx" WithCulture="true">
            <LogicalName>"$([MSBuild]::ValueOrDefault('%(ResxFileToInclude.RelativeDir)', '').Replace('\', '.')).%(ResxFileToInclude.Filename).resx"</LogicalName>
        </EmbeddedResource>
        </ItemGroup>
    </Target>
</Project>

$([MSBuild]::ValueOrDefault('%(ResxFileToInclude.RelativeDir)','')。替换('\','.')。%(ResxFileToInclude.Filename)。resx
如果我不在目标内部使用它,它就可以工作

<Project Sdk="Microsoft.NET.Sdk">
    <ItemGroup>
        <ResxFileToInclude Include="D:\WS\Latest\Build\x64\Release\AFS.resx"/>
    </ItemGroup>
        <ItemGroup>
            <EmbeddedResource Include="@(ResxFileToInclude -> '%(RelativeDir)%(Filename).resx')" Type="Resx" WithCulture="true">
            <LogicalName>"$([MSBuild]::ValueOrDefault('%(ResxFileToInclude.RelativeDir)', '').Replace('\', '.')).%(ResxFileToInclude.Filename).resx"</LogicalName>
        </EmbeddedResource>
        </ItemGroup>

</Project>

$([MSBuild]::ValueOrDefault('%(ResxFileToInclude.RelativeDir)','')。替换('\','.')。%(ResxFileToInclude.Filename)。resx
顺便说一句,我已经检查了链接中的解决方案:

有人能帮我吗