DataTable dt = new DataTable();
res.Fill(dt);它是get sql数据代码。
DataRow dr = dt.NewRow();
dr[0] = tt_id;
dr[1] = fault_desc;
dr[2] = tt_time;
dt.Rows.Add(dr);
DataView dv = new DataView(dt);
Response.Write(dv);
if (dv.Count != dv.ToTable(true, "tt_id").Rows.Count) {
// string sqlstr = string.Format("insert
}我想使用dataview来检查以前在sql中存在的新数据,如果存在,取消插入。问题是,反应说,我有相同的价值,但我检查它的地方没有任何相同的值在dv。这里面怎么了?
发布于 2015-08-07 13:16:50
var duplicateValues = (from row in dt.AsEnumerable()
orderby row.Field<string>("Id")
select new DuplicateObject
{
Id = row.Field<string>("Id"),
Name = row.Field<string>("Name"),
Skill = row.Field<string>("Skill")
}).Distinct(new DuplicateObjectComparer()).ToList();
string dupValue = string.Empty;
foreach (var dup in duplicateValues)
{
dupValue = dup.Id + " - " + dup.Name + " - " + dup.Skill;
Console.WriteLine("Duplicate entry:" + dupValue);
}
if (duplicateValues.Count == 0)
Console.WriteLine("No duplicate entry");
// Supporting classes
// Gives a strongly type class from the Linq query
public class DuplicateObject
{
public string Id { get; set; }
public string Name { get; set; }
public string Skill { get; set; }
}https://stackoverflow.com/questions/31874126
复制相似问题