无法使用 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>
在 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>