c#似乎无法让tcp客户端正常工作

问题描述 投票:0回答:2

我使用mdsn指南作为创建tcp客户端的示例(https://msdn.microsoft.com/en-us/library/system.net.sockets.tcpclient(v=vs.110).aspx?cs-save-lang=1&cs-lang=csharp#code-snippet-2)但我似乎无法找到一种方法让它工作或者我无法启动它(代码不能在主要或它不会认为主要是主要的)我似乎无法想象任何其他方式运行它(我不能在代码中调用它)继承人我写的(评论是芬兰语所以请不要介意他们)

static void Connect(String server, String message) 
    {
        try
        {
        //  Luodaan Tcpclient.
        Int32 port = 1978;
        TcpClient client = new TcpClient(server, port);

            //  Käännä viesti ascii ja sitte tallenna bytenä.
            Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);
            //  Tee client stream kirjottamista varten etc
            NetworkStream stream = client.GetStream();

            //  Lähetä viesti servulle
            stream.Write(data, 0, data.Length);

            Console.WriteLine("Sent: {0}", message);
            //  Saa se Tcpserver.response
            //  Bufferoi se byteiks
            data = new byte[256];

            //  Store vastaus stringinä
            String responseData = String.Empty;
            // lue eka osa siitä vastauksesta
            Int32 bytes = stream.Read(data, 0, data.Length);
            responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
            Console.WriteLine("Received: {0}", responseData);
            //  sulje kaikki
            stream.Close();
            client.Close();

        }
        catch (ArgumentException e)
        {
            Console.WriteLine("ArgumentNullException: {0}", e);
        }
        catch (SocketException e)
        {
            Console.WriteLine("SocketExeption: {0}", e);
        }
        Console.WriteLine(server);
        Console.WriteLine("\nPress enter to continue...");
        Console.Read();
    }

我得到的错误是:“程序不包含适用于入口点的静态'Main'方法”

请帮帮我,我真的很绝望

c# .net sockets tcp
2个回答
1
投票

假设您正在编写控制台应用程序,请确保您的项目在属性 - >应用程序中具有以下设置:

enter image description here

然后,假设您有一个Program类,请确保您有一个有效的static Main()方法。通过这种方法,您可以调用其余的方法。

例:

class Program
{
    static void Main(string[] args)
    {
        Connect("my.server.test", "Hellow TCP World!");
    }

    static void Connect(String server, String message)
    {
        //ommited for brevity
    }
}

0
投票

我想通了,而不是使用指南告诉我的东西我只使用main并添加2个字符串而不是让它们在顶级东西(不知道真名)

© www.soinside.com 2019 - 2024. All rights reserved.