Dapper kullanarak bir sorgudan DataTable döndürmem gereken bir senaryo var. DataTable'ı bir sorgu Dapper'ından nasıl döndürebilirim?DataTable için Dapper
DataTable dt = connection.Query ("SELECT * FROM table");
Dapper kullanarak bir sorgudan DataTable döndürmem gereken bir senaryo var. DataTable'ı bir sorgu Dapper'ından nasıl döndürebilirim?DataTable için Dapper
DataTable dt = connection.Query ("SELECT * FROM table");
hiçbir avantajı olursa olsun içinde olacak DataSet
'u içeren bir senaryo için dapper kullanarak. siz de doğrudan ExecuteReader
kullanın veya bir teşhir için DbDataAdapter
Ben, ancak, açık kullanıyor olabileceğini - Ve özellikle de (tüm parametreler vb olmadan) özel bir örnek çok önemsiz (sadece objektif olumsuz anlamına gelmez) 'dir Dapper üzerinden IDataReader
API'sini ortaya çıkaran dapper API'sı - bunu istediğiniz herhangi bir tüketici ile besleyebilirsiniz, DataSet
/DataTable
dahildir. Ama ben gerçekten şu soruyu sormalıyım: bu örneği dapper ile gerçekleştirirken point ne olurdu? En azından parametreleri işlemek için dapper kullanıyor olsaydınız daha mantıklı olabilirdi (Parametre işlemenin nasıl çalıştığından memnunum, gerçeği söylemeliyim).
ReportViewer için genel çalışma sınıfını hissediyorum. Dapper ve DynamicParameters ile istişareler. Aynı şey, sadece DataTable olan Dapper'ın dinamik verileriyle çalışmaz. Bu nedenle DataTable. Dapper Query ile ReportViewer ile çalışmanın bir yolu olmadığı sürece. – user2421145
Evet, hepsi kelimeler. Birçoğunu tanıyorum. Ancak hiçbir şey değişmez: Bu şu anda açıkça bir hedef stratejisi değildir. –
Dapper dinamik nesnelerini SqlBulkCopy'ye nasıl besleyeceğimi araştırırken bunu anladım, bu yüzden dinamik bir türe bir IDataReader (veya IDataRecord) eklemek çok faydalı olacaktır. Parametre bağlaması, bu senaryoda kendi başına faydalı olacak kadar iyidir. – James
Huh? Dapper sadece ADO.NET üzerinden uzatma yöntemleri sağlar - böylece DataTables ve DataSet'lerle uğraşmanıza gerek kalmaz!
DataTable ve DataSet istediğini değilseniz - hala vanilya ADO.NET kullanabilirsiniz - size tüm datatables gönlünüzce :) verecektir SqlDataAdapter (http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldataadapter.aspx)
İhtiyacım olan şey bir ReportViewer'ı Dapper sorgusundaki verilerle beslemektir. Dapper ile nasıl yapılır? this.reportViewer.LocalReport.DataSources.Clear(); DataTable dt = new DataTable(); dt = this.inputValuesTableAdapter.GetData(); Microsoft.Reporting.WinForms.ReportDataSource rprtDTSource = new Microsoft.Reporting.WinForms.ReportDataSource (dt.TableName, dt); this.reportViewer.LocalReport.DataSources.Add (rprtDTSource); this.reportViewer.RefreshReport(); – user2421145
@ user2421145 *** Dapper *** olmadan denediniz mi? bu konuda herhangi bir çözüm? – Kiquenet
Dapper bu iş için doğru araç değil. Vivek'in dediği gibi, Dapper, 'DataSet' değil, nesnelere doğrudan eşlemek üzere tasarlandı. – Chris