我编写了一个仅在同一网络上运行的客户端服务器应用程序
使用套接字实现的客户端是否可以连接到服务器的外部ip(也使用套接字..)和/或在不同的网络上实现?
我曾经认为它可能,但它只是不工作...
我告诉客户端通过给他服务器的ip连接到我的服务器。
但是客户端的套接字变为空NpgsqlConnection conn = new NpgsqlConnection("Server=xx.xx.xx.xx;Port=9996;Database=xxx;User Id=xx;Password=xx;CommandTimeout=40;");
conn.Open();
NpgsqlCommand command = new NpgsqlCommand("update testdenodoupdate set TestValue = :TestValue where id = :id;", conn);
command.Parameters.Add(new NpgsqlParameter("TestValue", NpgsqlTypes.NpgsqlDbType.Text));
command.Parameters[0].Value = "aa";
command.Parameters[0].SourceColumn = "TestValue";
command.Parameters.Add(new NpgsqlParameter("id", NpgsqlTypes.NpgsqlDbType.Integer));
command.Parameters[1].Value = 1;
command.Parameters[1].SourceColumn = "id";
ssUpdatedRows = command.ExecuteNonQuery();
答案 0 :(得分:0)
它应该可以工作,问题将出在网络而不是Android或套接字上。您应该确保服务器前面的防火墙正在通过您的端口并将端口转发到服务器的内部IP地址。