.NET 6 StatusCode 枚举返回相同的字符串
.NET 6 StatusCode Enum's returning same string
我一直在查看 .NET 6 中的 System.Net.HttpStatusCode
枚举,并注意到一些我无法解释的行为,因此寻求帮助。
Moved
和 MovedPermanently
的 .ToString()
输出都是“已移动”。这怎么可能?我希望后者是“MovedPermanently”。
Here is a .NET Fiddle 显示行为。
谁能解释一下这是怎么可能的?是否有一些我不知道的枚举参考/规范技巧?
HttpStatusCode.Moved
和 HttpStatusCode.MovedPermanently
共享相同的值 301
。
// https://source.dot.net/#System.Net.Primitives/System/Net/HttpStatusCode.cs,31
enum HttpStatusCode
{
...
MovedPermanently = 301,
Moved = 301,
...
}
因此,ToString
可能是 "Moved"
或 "MovedPermanently"
(我不确定这是确定性的)
我一直在查看 .NET 6 中的 System.Net.HttpStatusCode
枚举,并注意到一些我无法解释的行为,因此寻求帮助。
Moved
和 MovedPermanently
的 .ToString()
输出都是“已移动”。这怎么可能?我希望后者是“MovedPermanently”。
Here is a .NET Fiddle 显示行为。
谁能解释一下这是怎么可能的?是否有一些我不知道的枚举参考/规范技巧?
HttpStatusCode.Moved
和 HttpStatusCode.MovedPermanently
共享相同的值 301
。
// https://source.dot.net/#System.Net.Primitives/System/Net/HttpStatusCode.cs,31
enum HttpStatusCode
{
...
MovedPermanently = 301,
Moved = 301,
...
}
因此,ToString
可能是 "Moved"
或 "MovedPermanently"
(我不确定这是确定性的)