Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.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
Asp.net core 如何控制热巧克力中枚举值的序列化?_Asp.net Core_Graphql_Hotchocolate - Fatal编程技术网

Asp.net core 如何控制热巧克力中枚举值的序列化?

Asp.net core 如何控制热巧克力中枚举值的序列化?,asp.net-core,graphql,hotchocolate,Asp.net Core,Graphql,Hotchocolate,HotChocolate在所有大写字母中序列化枚举值,从而导致 作为枚举值,FooBar被热巧克力推断为FOO_BAR,但是value.ToString和enum.GetNamevalue给出了FooBar,热巧克力似乎忽略了[EnumMemberValue=FooBar] 如何将序列化更改为我喜欢的任何方式?HotChocolate server v11遵循规范建议,默认情况下,枚举值被序列化为每个默认值的大写字母 您可以这样更改: 建设者 .AddConvention新建YourNaming

HotChocolate在所有大写字母中序列化枚举值,从而导致 作为枚举值,FooBar被热巧克力推断为FOO_BAR,但是value.ToString和enum.GetNamevalue给出了FooBar,热巧克力似乎忽略了[EnumMemberValue=FooBar]


如何将序列化更改为我喜欢的任何方式?

HotChocolate server v11遵循规范建议,默认情况下,枚举值被序列化为每个默认值的大写字母

您可以这样更改:

建设者 .AddConvention新建YourNaming约定 公共类Yournaming约定 :DefaultNamingConventions { 公共重写名称字符串GetEnumValueNameobject值 { 如果值==null { 抛出新ArgumentNullExceptionnameofvalue; } return value.ToString.ToUpperInvariant;//将其更改为您喜欢的任何值 } }
HotChocolate服务器v11遵循规范建议,默认情况下,枚举值被序列化为每个默认值的大写字母

您可以这样更改:

建设者 .AddConvention新建YourNaming约定 公共类Yournaming约定 :DefaultNamingConventions { 公共重写名称字符串GetEnumValueNameobject值 { 如果值==null { 抛出新ArgumentNullExceptionnameofvalue; } return value.ToString.ToUpperInvariant;//将其更改为您喜欢的任何值 } }
关于他们为什么传入对象而不是枚举的任何线索?我想返回枚举描述,可能吗?关于他们为什么传入对象而不是枚举的任何线索?我想返回枚举描述,可能吗?