字典中的条件中的 TryGetValue



我需要检查字典中存在的任何值或不使用 TryGetValue。 这是我的代码。

return $"{context.Headers["routingkey"]}_Killswitch_Api";

这里 -context.Headers是字典。

这是我尝试过的:-

string keyvalue = string.Empty;
if (context.Headers.TryGetValue("routingkey",out keyvalue))
{
return $"{keyvalue}_Killswitch_Api";
}
else
{
return "_Killswitch_Api";
}

请让我知道我尝试过的方法是否正确?请建议我

您尝试的解决方案对我来说看起来不错。作为样式建议,您可以这样做,因为如果未找到该值,则输出值将初始化为 null,该字符串将内插为空字符串:

string keyvalue;
context.Headers.TryGetValue("routingkey", out keyvalue);
return $"{keyvalue}_Killswitch_Api";

请参阅文档以获取Dictionary.TryGetValue

是的,你正在做的事情是有效的。

如果您没有在程序中进一步使用它,则无需使用string.Empty初始化keyvalue

如果你愿意,你也可以做:

string keyvalue; 
if (!context.Headers.TryGetValue("routingkey", out keyvalue))
{
keyvalue = string.Empty;
}
return $"{keyvalue}_Killswitch_Api";

这基本上可以完成同样的事情。

最新更新