0

在我的代码中,我必须获取要连接的源端口的 TCP 端口。我只有一个SqlConnection(System.Data.SqlClient.SqlConnection)对象,从 C# 中的 SqlConnection 对象获取端口的最佳方法是什么?

4

3 回答 3

1

您可以使用SqlConnection.ConnectionString并从DataSource对象中获取端口,因为这应该在DataSource逗号分隔的末尾 (myDatabaseServer\Insatnce,1433")

例子:

  int port = int.Parse(sqlCon.ConnectionString.DataSource.Split(',').Last());

不要忘记添加错误处理:)

于 2013-08-27T02:53:38.723 回答
0

SqlConnection.ConnectionString 可能包含“数据源”中的端口。您是否尝试过在“调试”模式下运行以触发代码中的断点?您应该能够检查该 SqlConnection 的所有属性。

不确定 SqlConnection.RetrieveStatistics() 返回的确切内容,但您也可以检查它的返回值。

于 2013-08-27T02:52:10.037 回答
0

感谢您的回答,但它们不是我想要的答案。

实际上我想要连接的端口。例如:使用 netstat 我得到如下连接信息: TCP 10.11.12.13: 3055 9.10.11.12:1433 ESTABLSHED

我想从 SqlConnecton 对象中获取端口“3055”。

于 2013-08-28T02:45:33.183 回答