我正在创建一个类库,里面有不同的功能.我还有一个控制台应用程序,可以在引用类库后访问它们.我想知道如何使一个函数"隐形",所以客户端将无法看到它存在,只有完美地写出它们才能使用它.
我在我的类库中有这个功能:
public string custommessage(string messagetosend)
{
string receivedmessage = CallServer(messagetosend);
return receivedmessage;
}
Run Code Online (Sandbox Code Playgroud)
基本上当我在一个引用该库的不同程序时,我不想在我的可用函数列表中看到这个函数可供选择:
我使用UDP套接字发送然后接收消息.
所以当我收到时我将超时异常设置为4秒......
sending_socket.ReceiveTimeout = 4000;
sending_socket.ReceiveFrom(ByteFromListener, ref receiving_end_point);
Run Code Online (Sandbox Code Playgroud)
现在我得到这个异常(我期待):System.dll中出现未处理的类型'System.Net.Sockets.SocketException'异常
附加信息:连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机无法响应
我想知道如何忽略这个异常?
基本上我希望UDPSOCKET监听4秒钟,如果没有答案,那么尝试再次发送消息..我的代码是以下(部分)
IPEndPoint sending_end_point = new IPEndPoint(sendto, sendPort);
EndPoint receiving_end_point = new IPEndPoint(IPAddress.Any, 0);
Socket sending_socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
text_to_send = ("hello");
byte[] send_buffer = Encoding.ASCII.GetBytes(text_to_send);
sending_socket.SendTo(send_buffer, sending_end_point);
Byte[] ByteFromListener = new byte[8000];
sending_socket.ReceiveTimeout = 4000;
sending_socket.ReceiveFrom(ByteFromListener, ref receiving_end_point);
string datafromreceiver;
datafromreceiver = Encoding.ASCII.GetString(ByteFromListener).TrimEnd('\0');
datafromreceiver = (datafromreceiver.ToString());
Run Code Online (Sandbox Code Playgroud)