c# - ConfigurationManager.ConnectionStrings ["aaa"].ConnectionString 将 127.0.0.1 替换为 localhost

标签 c# mysql mono app-config

我有一个在 Linux 上运行 Mono 的 winforms 应用程序,我想从我的 app.config 文件中获取 ConnectionString

字符串cs = ConfigurationManager.ConnectionStrings["aaa"].ConnectionString

但它将 SERVER=127.0.0.1 转换为 SERVER=localhost 并且使用此连接字符串我无法连接到我的 Mysql DB,因为:

On Unix, MySQL programs treat the host name localhost specially MySQL DOC

如何获取连接字符串并拥有 SERVER=127.0.0.1

最佳答案

您引用的文档仅适用于 mysql 程序,不适用于 Connector/NET(C# 连接库)。

根据its documentation ,您必须在连接字符串中设置 ConnectionProtocol=unix 才能使用 Unix 套接字;否则默认是 TCP 连接(甚至到 localhost)。

因此,无需替换连接字符串中的主机名。

关于c# - ConfigurationManager.ConnectionStrings ["aaa"].ConnectionString 将 127.0.0.1 替换为 localhost,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51359307/

相关文章:

c# - 在 OpenRasta 中,配置可能不明确的 URI 是错误的吗?

mysql - 查找mysql中最后一个序列的开始时间

c# - TypeLoadException - 如何继续

mysql - 加载文件中的数据(mysql批量上传)可以读取压缩文件吗?

mono - 反对Mono的论点是什么? Microsoft Community Promise是否会更改任何内容?

c# - 如何使用 Xamarin Android 访问 ServiceManager

c# - 将 C# 中的任务调度程序替换为定制的任务调度程序

c# - 匹配列表中值的通配符是什么?

c# - COM C# 内存泄漏跟踪

mysql - 在 MySQL 中创建 EVENT 时出错