2
我有一個數據表,其中一列具有字符串值。我想對該列強制執行一個唯一的約束,但是如果我有兩個值只在最後有一個空格(例如「test」和「test」),約束就會失敗。我不想要這樣,我希望這兩個值被認爲是唯一的,即使唯一的區別是最後一個空格。我怎樣才能做到這一點?數據集上的UniqueConstraint在值包含空格時失敗
try
{
DataTable dt = new DataTable("test");
dt.Columns.Add("nr");
dt.Columns.Add("text");
DataRow dr = dt.NewRow();
dr.ItemArray = new object[] { 1, "test" };
dt.Rows.Add(dr);
dr = dt.NewRow();
dr.ItemArray = new object[] { 2, "test " };
dt.Rows.Add(dr);
dr = dt.NewRow();
dr.ItemArray = new object[] { 3, "alabala" };
dt.Rows.Add(dr);
dr = dt.NewRow();
dr.ItemArray = new object[] { 4, "bbb" };
dt.Rows.Add(dr);
DataSet ds = new DataSet("testds");
ds.Tables.Add(dt);
ds.EnforceConstraints = true;
UniqueConstraint unqUID = new UniqueConstraint(ds.Tables[0].Columns[1], true);
ds.Tables[0].Constraints.Add(unqUID);
int count = ds.Tables[0].Rows.Count;
}
catch (Exception ex) {
MessageBox.Show(ex.Message);
}