我遇到了PetaPoco並決定試一試 有沒有人來過這個示例WindowsForms應用程序?到目前爲止,我只找到示例Web應用程序。適用於Windows窗體的PetaPoco示例應用程序
我瞭解PetaPoco與NHibranate類似的概念,但未能找到示例來了解如何將網格綁定到查詢結果。如果任何人手頭上有一個應用,最好是一個示例應用。
我遇到了PetaPoco並決定試一試 有沒有人來過這個示例WindowsForms應用程序?到目前爲止,我只找到示例Web應用程序。適用於Windows窗體的PetaPoco示例應用程序
我瞭解PetaPoco與NHibranate類似的概念,但未能找到示例來了解如何將網格綁定到查詢結果。如果任何人手頭上有一個應用,最好是一個示例應用。
可以綁定一個WinForm的DataGridView這樣的:
Dim ppdb = New PetaPoco.Database("Data Source=XXXX;Initial Catalog=xxxx;Integrated Security=True;", "System.Data.SqlClient")
Dim blTable = New BindingList(Of TableItem)(ppdb.Query(Of TableItem)("select * from table").ToList)
Dim bsTable As New BindingSource(blTable, "")
DataGridView.DataSource = bsTable
如果要保留更改,則需要將對象保存回數據庫。
要獲得POCO綁定到行,請使用:
Dim obj = DataGridView.Rows(RowIndex).DataBoundItem
你應該能夠只是直接綁定到從public IEnumerable<T> Query<T>(string sql, params object[] args)
返回List<T>
- 例如從線752 PetaPoco.cs採取@source on GitHub
即使它是相當古老的線程,也許有人會需要這個。 直接綁定到List,就是這樣。
using (var db = new PetaPoco.Database(string_connection, string_provider))
{
try
{
var ret = db.Query<MyTable>("select * from my_table_name").ToList();
if(ret != null)
{
dgv.DataSource = ret;
}
}
catch (Exception ex)
{
Trace.WriteLine("Error: " + ex.Message);
}
} // using