4

我有 PostgresQL 数据库,并且我使用 C# 和 Npgsql 开发接口应用程序以连接到数据库,如何将 Npgsql 连接分配给 TableAdapter?

谢谢,

4

2 回答 2

1

我与 PostgreSQL 完全一样。

我不相信这是可能的。Npgsql 有自己的数据适配器(参见http://npgsql.projects.postgresql.org/docs/manual/UserManual.html并搜索文本“适配器”)。这样做的缺点是您不能使用 Visual Studio 设计器。

因此,我使用的是 .NET 的 ODBC 数据源。为此,您需要安装 postgresql odbc 驱动程序,该驱动程序可在此处获得:http ://www.postgresql.org/ftp/odbc/versions/msi/ 。安装后,您可以进入控制面板-> 管理工具-> 数据源(ODBC)添加一个DSN(数据源名称)。最后,在 Visual Studio 中转到服务器资源管理器,右键单击“数据连接”并选择“添加连接...”,然后更改 Microsoft ODBC 数据源的数据源。在这里你可以选择你之前提供的DSN,还有viola!你在做生意。

(请注意,由于某些疯狂的原因,布尔值以字符串形式出现。您可以在 ODBC 数据源管理器中通过单击 PostgreSQL 数据源上的“配置”,转到数据源选项并取消选中“布尔值作为字符”来更改它。)

于 2009-06-29T23:10:43.480 回答
0

抱歉,它有点晚了,但是这里是你将如何做到的,使用数据适配器。

创建数据网格 创建数据表

使用 dataAdapter 填充数据表,// 提供函数 - dataTableName.fill() 设置数据网格以显示数据表的默认视图

    try
        {
           using (var Connection = new NpgsqlConnection(PG_Connection_String))
           NpgsqlDataAdapter da = new NpgsqlDataAdapter("myQuery", connectionString))

 {
                    Connection.Open();

                    myTable = new System.Data.DataTable();
                    da.Fill(myTable);

                    postgresql_dataGrid.DataSource = myTable.DefaultView;

                    Connection.Close();
                }
            }
            catch (Exception Ex)
            {
                MessageBox.Show("Your Error", "Connection Error");
            }
        }

鲍勃是你的叔叔,我正在成功使用它。我建议如果您希望为自定义标题等准备网格,请在设置数据网格的默认视图之前执行此操作

于 2018-08-29T13:43:24.577 回答