C# 如何以KeyValuePair的形式返回异常(用于多语言支持)

C# 如何以KeyValuePair的形式返回异常(用于多语言支持),c#,asp.net,rest,C#,Asp.net,Rest,我有一个用c#编写的REST服务,当我抛出HttpResponseException时,我希望它将异常消息(用几种不同语言编写的简明消息)作为keyValuePair进行详细说明,并允许客户端应用程序根据语言要求选择要使用的内容。 如果不推荐keyValuePair,并且有人有不同的建议,那也太好了,我只是在寻找一种方法来实现这个想法 提前感谢。您可以为此实现自定义异常。然而,最好的方法可能是抛出一个正常的异常,让客户端将其转换,即始终抛出英语的异常,客户端可以将其转换为所需的语言。可能您应该根

我有一个用c#编写的REST服务,当我抛出HttpResponseException时,我希望它将异常消息(用几种不同语言编写的简明消息)作为keyValuePair进行详细说明,并允许客户端应用程序根据语言要求选择要使用的内容。 如果不推荐keyValuePair,并且有人有不同的建议,那也太好了,我只是在寻找一种方法来实现这个想法


提前感谢。

您可以为此实现自定义异常。然而,最好的方法可能是抛出一个正常的异常,让客户端将其转换,即始终抛出英语的异常,客户端可以将其转换为所需的语言。可能您应该根据请求的Accept language标头返回错误消息的单次翻译?或者按照@SergeyBerezovskiy的建议,计算出请求的语言客户端,并仅返回该语言。