我在我的数据层中使用linq到sql,我已经将“settings”表添加到常规asp_user表。 在这个设置表中,我保留了其中一个是首选单元(Units表的一个外键)的几个记录。Linq to Sql更新创建重复记录
现在当这个首选单位需要改变(比如说从升到千克)时,我会打电话给我的UnitService以获取正确的单位实例并将我的设置.PreferedUnit设置为此实例。 这将在数据库中创建一个新的(重复)项目(我的Units表中现在有两千克记录)。这当然不是我想要的。
我有我做错了一堆根本的东西
UserSetting setting = AccountService.GetUserSetting(user.Identity.Name);
if (setting.PreferedUnitId != unitId)
setting.Unit = UnitService.GetUnitById(unitId);
AccountService.SaveuserSetting(setting);
是的,你是对的。这可能会解决它。 – 2009-06-08 09:31:15