Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何利用静态类包装配置值?_C#_.net_Azure_Visual Studio 2017_Azure Functions - Fatal编程技术网

C# 如何利用静态类包装配置值?

C# 如何利用静态类包装配置值?,c#,.net,azure,visual-studio-2017,azure-functions,C#,.net,Azure,Visual Studio 2017,Azure Functions,我正在尝试使用静态类检索配置值: public static class Configurator { public static string HashesConnectionString { get; } = Environment.GetEnvironmentVariable("HashesConnectionString"); public static string SftpUser { get; } = Environment.GetEnvironmentVariab

我正在尝试使用静态类检索配置值:

public static class Configurator
{
    public static string HashesConnectionString { get; } = Environment.GetEnvironmentVariable("HashesConnectionString");
    public static string SftpUser { get; } = Environment.GetEnvironmentVariable("SftpUser");}
当试图从单独的类检索这些时,我遇到了一个非常尴尬的错误:

System.TypeInitializationException
  HResult=0x80131534
  Message=The type initializer for 'MyHandler.Configuration.Configurator' threw an exception.
  Source=MyHandler
  StackTrace:
   at MyHandler.Configuration.Configurator.get_HashesConnectionString() in C:\Users\John.S\source\repos\MyHandler\MyHandler\Configuration\Configurator.cs:line 11
   at MyHandler.OnMumboCaseBlobTriggered.RunAsync(CloudBlockBlob blob, String name, TraceWriter log) in C:\Users\John.S\source\repos\MyHandler\MyHandler\Functions\OnMumboCaseBlobTriggered.cs:line 31
   at Microsoft.Azure.WebJobs.Host.Executors.VoidMethodInvoker`2.InvokeAsync(TReflected instance, Object[] arguments)
   at Microsoft.Azure.WebJobs.Host.Executors.FunctionInvoker`2.<InvokeAsync>d__9.MoveNext()

Inner Exception 1:
ArgumentNullException: Value cannot be null.
Parameter name: String
但例外依然存在

我的静态类有什么问题?我是否不当地使用了此类?

此示例中出现此异常:

public static void RunAsync([BlobTrigger("awesomeBlobber", Connection = "StorageConnectionString")] CloudBlockBlob blob, string name, TraceWriter log)
{
               var connString = Configuration.Configurator.HashesConnectionString;

}

错误指向上面的代码段中未包含的
HashesConnectionString
。这似乎是一个错误。A应该有助于澄清实际的问题,我相信您在get_HashesConnectionString getter中有一些失败的逻辑。另外,我假设您正在尝试处理连接字符串,但您指定了一个错误的环境变量名(从应该读取的位置),并且得到了“null”而不是它的值。@IgorGnedysh没有逻辑,先生。这是一个简单的
get
。硬编码值
public static string HashesConnectionString{get;}=“my hardcoded value”
产生了相同的结果exception@MoreOrLessYou好问题。不,没有。我试图添加一个公共构造函数,但得到了相同的例外情况,即您确定没有某种名称空间冲突。尝试修改名称空间。你不应该用
=>
代替
=
public static void RunAsync([BlobTrigger("awesomeBlobber", Connection = "StorageConnectionString")] CloudBlockBlob blob, string name, TraceWriter log)
{
               var connString = Configuration.Configurator.HashesConnectionString;