无法使用 GetManifestResourceStream 方法从 WebJob 的 JSON 文件获取资源流

Can't get resourceStream from JSON file from the WebJob using the GetManifestResourceStream method

在 Visual Studio 2017 年,我创建了一个 WebJob。我将该 WebJob 命名为 'TaxSyncWebJob'

在 TaxSyncWebJob 项目文件夹中,我放置了一个名为 taxonomy.json 的 JSON 文件以供读取

我正在使用以下代码尝试访问 JSON

var resourceStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("TaxSyncWebJob.taxonomy.json");

然而,resourceStream returns null.

该代码适用于一个简单的控制台项目

我无法使用 GetManifestResourceStream 在 WebJob 中获取 JSON 内容是什么原因?

最终使用了这个解决方法

        string projectPath = Path.GetDirectoryName(Path.GetDirectoryName(Directory.GetCurrentDirectory()));
        string contents = File.ReadAllText(projectPath + "\taxonomy.json");

也许这对其他人有帮助。您需要更新 csproj 文件以包含这些 json 文件,否则程序集清单将无法在运行时找到它们。

<ItemGroup>
    <EmbeddedResource Include="<path>\<to>\<file>\TaxSyncWebJob.taxonomy.json" />
</ItemGroup>

<ItemGroup>
    <Resource Include="<path>\<to>\<file>\TaxSyncWebJob.taxonomy.json">
        <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </Resource>
</ItemGroup>