我想有一个共同的函数返回一个参数的应用程序设置:
public static string GetAppSettings(string key)
{
string sfAppName = Environment.GetEnvironmentVariable("Fabric_ApplicationName");
if (string.IsNullOrEmpty(sfAppName)) // we are NOT in SF
{
return ConfigurationManager.AppSettings[key];
}
else
{
ConfigurationPackage configurationPackage = FabricRuntime.GetActivationContext().GetConfigurationPackageObject("Config");
return configurationPackage.Settings.Sections["appSettings"].Parameters[key].Value;
}
}
所以,这个功能从appSettings.config如果调用代码是一个标准的Web应用程序运行,并从Local.1Node.xml如果调用代码作为服务运行面料的microService得到的参数。
当我把这个函数的微服务“文件夹”之外(在共享项目中)我无法导入
using System.Fabric;
有没有一种方法一种方法来做到这一点?而且这是一个好的做法呢?
当然,你可以在你的共享项目中,添加到Microsoft.ServiceFabric Nuget包的引用。
Install-Package Microsoft.ServiceFabric
或dotnet add package Microsoft.ServiceFabric