实体数据源.添加新记录.如何“;seek”;先看看之前有没有

本文关键字:数据源 有没有 seek 新记录 如何 实体 添加 | 更新日期: 2023-09-27 18:27:18

EDS.VWD 2011新增。

将车辆添加到我的车辆文件中。PK是公司编号(字符5)和车辆代码(字符15)。使用仅包含主键和实体的详细信息视图定义数据源,并使用数据注释记号。

在EDS插入事件中,我想进入文件,看看输入的内容是否首先存在。如果有新的代码,它会添加完美的代码,当然炸弹也是重复的。

老visualfoxpro程序员,刚刚学会这个。EDS已经打开,数据库中有正确的文件和所有内容。。如果我做了一个count()"where"条件,如果为0,可能是new。。。我真的只是想要一些foxpro SEEK COMPANYNUMBER+VEHCODE,如果没有,允许添加。。。

感谢您的意见。现在是凌晨2点。。教自己一些新东西很有趣。。。很多小时。。Frank C:)

实体数据源.添加新记录.如何“;seek”;先看看之前有没有

您可以出去检查记录是否已经存在,然后只在不存在的情况下添加它;也许更好的方法是在字段组合上有一个唯一的索引,这样就不可能保存重复的记录,然后让EF告诉您保存更改何时失败。这将防止您在每次插入尝试时对DB进行两次调用。

示例:

    try
{
    if (ModelState.IsValid)
    {
        db.Vehicles.Add(vehicle);
        db.SaveChanges();
    }
}
catch (DataException)
{
    //Log the error (add a variable name after DataException)
    ModelState.AddModelError("", "Unable to save changes. Try again, and if the problem persists see your system administrator.");
}