我知道我们在使用cursor.getServerAddress()的Java驱动程序中有它。但是,我无法在C#中找到任何相关的调用。如何获取数据从服务器的服务器地址
2
A
回答
3
不幸的是,尽管通过C#驱动程序源代码(以及Java源代码查看它在做什么)深入了解了一些内容,但作为提取一部分使用的实际服务器地址隐藏在枚举器中作为私人会员(_serverInstance
)。
特别是,它隐藏在名为MongoCursorEnumerator
的类中。不幸的是,没有一个“诚实”的方式来获得它。你可以使用.NET反射来实现它,但这通常不是一个好主意,特别是对于你不拥有的代码。如果您想拥有该驱动程序的自定义分支,则可以轻松将其添加为新属性。您可能想要添加问题here。
通常,您可以获取MongoDB连接使用的实例,因为它们在MongoServerInstance
类,Address
属性上可用。
cursor.Server.Instance.Address.Host
或
cursor.Server.Instances[]
:
var client = new MongoClient();
var server = client.GetServer();
// server.Instance.Address
然而,在你的情况,你也可以从cursor
通过Server
财产得到它
当有多个实例可用时,C#驱动程序会引发有趣的抛出和异常。因此,如果您不知道有多少个实例,则需要处理exception
(InvalidOperationException
),或者始终使用Instances[]
属性返回关联的实例。
相关问题
- 1. 如何获取服务器IP地址?
- 2. 如何从IP地址获取服务器的机器名称?
- 3. 获取服务器IP地址
- 4. 获取IP地址当前服务器
- 5. 在服务器端获取本地IP地址的非服务器端方法?
- 6. 如何从bitcoind服务器获取硬币地址余额?
- 7. 服务人员 - 从我的服务器获取推送数据
- 8. 从服务器获取数据Objective-C
- 9. Android,从服务器获取数据
- 10. 从服务器获取json数据
- 11. 从周期服务器获取数据
- 12. HorizontalScrollView从服务器获取数据
- 13. 角从服务器获取数据MVC
- 14. iOS从服务器获取数据
- 15. 从服务器获取数据
- 16. 从服务器获取数据objective-c
- 17. 如何获取从服务器获取数据的url/xmlhttprequest?
- 18. 服务器的IP地址
- 19. C#web服务从sql服务器获取数据
- 20. md-autocomplete angular2从服务器获取数据(使用服务)
- 21. 如何获取响应WebResponse的服务器的IP地址C#
- 22. 如何获取请求来自的服务器的IP地址?
- 23. 如何获取getaddrinfo查询的DNS服务器的地址
- 24. 从本地服务器插入数据到在线服务器
- 25. 如何在.NET中获取服务器的IP地址?
- 26. 如何获取asp.net中的服务器/网站IP地址?
- 27. 如何在rails上获取主机服务器的IP地址
- 28. 如何从ReactJS(服务器URL)中的浏览器获取URL地址
- 29. 如何获得 “JBoss服务器绑定地址” 从servlet的
- 30. 从服务器获取
谢谢WiredPrairie。我试过了,但它不是我正在寻找的那个。它会在连接字符串中返回IP地址。在我的情况下,我连接到具有2个辅助服务器的复制组。我想获取从中提取数据的服务器的服务器地址。我使用ReadPreference.Secondary模式。在我们阅读文档时,驱动程序将循环查询并将查询路由到服务器。 – 2013-04-08 22:02:11
@TuongHuynh - 啊。我误解了。它几乎相同。请参阅编辑(通过'cursor.Server.Address'属性。 – WiredPrairie 2013-04-09 00:04:53
@TuongHuynh - 当使用Instances时会发生什么? – WiredPrairie 2013-04-09 01:32:27