在C#ASP.NET中创建自己的静态错误代码列表的典型方法是什么?

在C#ASP.NET中创建自己的静态错误代码列表的典型方法是什么?,c#,asp.net,C#,Asp.net,我正试图找到最有效的方法为我的web服务创建一个错误代码列表,这样当出现某些问题时,我的客户端应用程序就会知道它是什么。我不想返回很长的字符串,所以我宁愿使用简单的数字。我只是好奇你们中的一些人如何为asp.net应用程序创建自己的错误代码表。您只是在web服务中创建一组常量还是枚举类型?或者你会创建一个只包含常量的类吗?我不确定最好的处理方法是什么。我不想在每次有人点击web服务时仅为错误代码实例化一个类 编辑:我应该更具体一点。web服务确实使用数据契约,但不使用WCF。我正在使用一个自制的

我正试图找到最有效的方法为我的web服务创建一个错误代码列表,这样当出现某些问题时,我的客户端应用程序就会知道它是什么。我不想返回很长的字符串,所以我宁愿使用简单的数字。我只是好奇你们中的一些人如何为asp.net应用程序创建自己的错误代码表。您只是在web服务中创建一组常量还是枚举类型?或者你会创建一个只包含常量的类吗?我不确定最好的处理方法是什么。我不想在每次有人点击web服务时仅为错误代码实例化一个类


编辑:我应该更具体一点。web服务确实使用数据契约,但不使用WCF。我正在使用一个自制的JSON-RPC实现,它要求在响应JSON中存储一个错误代码。

您不是在用C编程,为什么是错误代码? Web服务在这里很广泛,但我想你指的是WCF

无论如何,WCF会向客户端抛出一个FaultException,这比使用错误代码要好得多。错误代码不会告诉我任何事情,并且可以证明是一个PITA,以便以后维护。 但是如果发生FaultException,我可以从对象中收集到很多信息


FaultException(或SomeException)>错误代码

对你来说只是个想法,但是。。。不要担心创建类,当您不再需要它时,垃圾收集器会将其处理掉,如果您足够频繁地使用它,那么它将以Jit形式保留在应用程序内存中,因此它将具有良好的性能

就我个人而言,我尽量不过分担心“性能”,因为它通常甚至不明显

然而,如果您担心,那么您应该考虑创建一个单一的静态类,该类可以在应用程序范围内使用并在启动时实例化,并将常量保存在那里,因为这样一个单一的内存中类将被使用,从而节省内存和任何感知到的性能影响

祝福


Matthew

假设您指的是web服务的WCF类型,您可以使用来指定不同的错误以及如何在客户端处理这些错误。

WCF支持漂亮的SOAP错误字符串。我喜欢用它们创建层次结构。示例:“Fault.UserManagement.CreateUser.UserNameAlreadyExists”。比错误代码要好得多。不幸的是,我必须创建自己的支持JSONRPC 2.0的web服务,因此必须按照json-RPC将错误代码填充到json字符串中。所以我不能使用WCF的所有很酷的功能。我只是在web服务中添加更多要实例化的类时总是犹豫不决,因为我认为这会影响性能。我也不太热衷于创建只包含常量的静态类,但看起来这就是我要做的。