C#错误代码管理

C#错误代码管理,c#,C#,我已经开发了一个服务器,它接受来自客户端的连接(使用TCP/IP),以便与不同的提供者进行操作。服务器执行操作并将输出返回给客户端 我的服务器必须发回错误代码,以防流程中出现错误,客户端应该知道错误发生的确切位置 例如,若服务器无法连接到提供程序,则客户端应返回错误代码107和说明“与提供程序的连接错误” 在服务器上保存错误代码而不是在代码中硬编码的最佳方法是什么?如果您是从头开始创建“服务器”(意味着您使用的是纯socket或TcpClient)。我建议您制作某种包含键值对的.ini文件,如:

我已经开发了一个服务器,它接受来自客户端的连接(使用TCP/IP),以便与不同的提供者进行操作。服务器执行操作并将输出返回给客户端

我的服务器必须发回错误代码,以防流程中出现错误,客户端应该知道错误发生的确切位置

例如,若服务器无法连接到提供程序,则客户端应返回错误代码107和说明“与提供程序的连接错误”

在服务器上保存错误代码而不是在代码中硬编码的最佳方法是什么?

如果您是从头开始创建“服务器”(意味着您使用的是纯
socket
TcpClient
)。我建议您制作某种包含键值对的.ini文件,如:

107=与提供商的连接错误

要阅读本文,您可以使用以下代码段:

public Dictionary<int, string> ReadIniFile(string filePath)
{
    Dictionary<int, string> result = new Dictionary<int, string>();
    using ( StreamReader reader = new StreamReader(new FileStream(filePath, FileMode.Open))
    {
        string line = string.Empty;
        while( ( line = reader.ReadLine() ) != null )
        {
            if(line.Contains('='))
            {
                int eCode = 0;
                if( int.TryParse(line.Split('=')[0], out eCode) )
                {
                    result.Add(eCode, line.Split('=')[1]);
                }
            }
        }
    }
    return result;
}
这将需要为每个新的错误代码重新生成(效率极低)


另一种可能是使用
server.exe.config
文件,您可以在其中存储错误代码和说明(可以或不可以要求重建)。

服务器指的是web服务器。是吗?请提供更多细节。添加一些可以描述您所面临的确切问题的代码片段。事实上,任何“脱机”资源都可以做到这一点,
xml
资源文件
,等等。而不是web服务器。。简单的TCP/IP侦听器应用程序。
Dictionary<int, string> error_codes = new Dictionary<int, string>();
error_codes.add(107, "CONNECTION ERROR WITH PROVIDER");