.NET框架中的"application/json"常量

138

我刚在我的一个类中声明了一个常量,用于代表"application/json"的内容类型。

public const string JsonContentType = "application/json";

我不确定这是否是一个好的做法。

.NET框架是否有预定义的常量用于“application/json”?


2
请访问https://dev59.com/3XNA5IYBdhLWcg3wUL5Y。 - Andreas Adler
3个回答

201

16
很遗憾,在.NET Standard 2.0中似乎没有提供Json常量。 - Panzercrisis
2
请将此标记为最佳答案或更新最佳答案。 - bruno.almeida
1
同样,这应该是正确的答案。 - Alfred Severo

71

请参见新答案。 此答案现在不准确。

虽然MediaTypeNames中定义了一些MIME常量(请参见此处),但没有常量代表“application/json”。

将其他内容类型放入共享常量中可能是最佳实践,至少比在代码中的字符串文字中一遍又一遍地定义它们要好。

而且,这还为您提供了使用新的/自定义MIME类型的灵活性,这是特定.NET版本可能没有的。


很高兴你提到了定义公共常量的最佳实践。这是#cleanCode的做法,而不是在代码中到处乱放。 - RBT
它“允许”新/定制 MIME 类型的暗示结论并不成立,因为定义一个字符串常量并不妨碍向开放集(所有可能的字符串)中添加内容。由于 JSON/XML/HTML 在互联网上非常普遍,在 .NET Net/Web 程序集的其中之一中具有这些标准将是有用的..我想知道 .NET Core 是否改变了这个答案? - user2864740
如果只添加了"application/json",那么Arg或者or就会有相关的答案。 - user2864740
57
.NET Core 2.1.0 已经定义了 MediaTypeNames.Application.Json :) 请参见 https://github.com/dotnet/corefx/pull/26701。 - Bob Van de Vijver

9

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接