我有一個包含數據的數據表。我需要將另一列添加到具有相同值的另一列,但精度較低的數據表。基於現有列將新列添加到數據表的最佳方法
即原來的列將是具有價值12.123 但新列將具有值12.12
什麼是做到這一點的最好方法是什麼?
我有一個包含數據的數據表。我需要將另一列添加到具有相同值的另一列,但精度較低的數據表。基於現有列將新列添加到數據表的最佳方法
即原來的列將是具有價值12.123 但新列將具有值12.12
什麼是做到這一點的最好方法是什麼?
做一個計算列,使您的數據的完整性未有違反
你可以看到這個article找出如何
一些網格實現,如DevExpress XtraGrid,允許您有未綁定的列併爲其提供值。同樣的事情會涉及到一些基本的DataGridView的黑客攻擊,所以我還有其他建議。爲您的課程添加一個新的只讀屬性: decimal value1 {get;組; } decimal value2 {get {return Math.Round(value1,2);} }} 這樣你甚至不必擔心列顯示格式。
像這樣的事情
yourDataTable.Columns.Add("newCol", typeof(double));
foreach (System.Data.DataRow row in yourDataTable.Rows)
{
row["newCol"] = Math.Round(Convert.ToDouble(row["oldCol"]), 2);
}
謝謝!我用你的例子來添加一個新的,非計算列到現有的表`sectionDS.Tables [0] .Columns.Add(「IPAddr」,typeof(long)); (DataRow row in sectionDS.Tables [0] .Rows){row [「IPAddr」] = 0x0100007F; }` – 2012-08-27 13:44:54
@JimLahman,很高興它幫助.. – RameshVel 2012-08-30 06:23:04
Thanks..But我我沒有將此數據表綁定到任何網格視圖。 Iam只是使用這個進行一些計算,因此我不認爲這個解決方案可以在這裏工作。 – Ananth 2010-12-23 09:18:41