我无法弄清楚你在linq-to-sql中如何做到这一点。更新外键列
简单的外键示例如下。
CARS TABLE
Columns - CARID (PK), NAME, SIZE, MODELID(FK)
MODELS TABLE
Columns MODELID(PK), MODELNAME
更改SQL车的型号我会
UPDATE CARS
SET MODELID = 'MODEL88'
WHERE CARID = 'CAR01'
在LINQ到SQL我试图做同样的事情,但更新不工作。
Car car = db.Cars.Where(x => x.CarId == "CAR01").FirstOrDefault();
Model model = db.Models.Single(c => c.ModelId == "MODEL88");
car.Model = model;
db.SubmitChanges();
没有例外,它只是不做更新。更新不是外键的其他字段可以工作,例如尺寸。
Car car = db.Cars.Where(x => x.CarId == "CAR01").FirstOrDefault();
car.Size = "22";
db.SubmitChanges();
父类:模型子类:汽车在dbml中,我会尝试.Add现在加入 – Hoody 2012-04-25 10:19:59
.Add(汽车)不起作用 – Hoody 2012-04-25 10:45:04
您的答案有帮助,因为它表明我没有做错任何事。从头开始重新创建所有东西,所以一定会损坏。 – Hoody 2012-04-26 15:11:18