我们正在从 .NET Framework 上使用 Excel-DNA 过渡到 .NET 6。在 .NET Framework 下,我们的配置选项在 .xll.config 文件中指定,这些选项被捆绑到我们分发的生成的 .XLL 文件中给我们的用户群。非常无缝。
我的理解是,对于 .NET 6,我们使用
appsettings.json
。
在使用
appsetting.json
时,我们是否需要将此文件与 .XLL 文件一起分发,还是将 appsetting.json
的内容折叠到 .XLL 文件中,为我们提供一个可分发文件?
是否有关于如何将
appsettings.json
与 Excel-DNA 一起使用的示例代码?
在 .NET 6 下,您无法从 Excel-DNA 获得配置文件支持,但您可以在自己的代码中实现。 (在 .NET Framework 下,有一个每个 AppDomain,因此每个插件的 .config 文件必须在其余代码之前加载,因此我们必须将管道放入 Excel-DNA 中才能使其工作。)
对于您的appsettings.json,您可以
var basePath = Path.GetDirectoryName(ExcelDnaUtil.XllPath);
IConfiguration configuration = new ConfigurationBuilder()
.SetBasePath(basePath)
.AddJsonFile("appsettings.json")
.Build();
JsonConfigurationExtensions.AddJsonStream
作为流加载到配置中。