【发布时间】:2011-11-06 03:22:25
【问题描述】:
问题在于外键:
INSERT 语句与 FOREIGN KEY 约束“FK_uzytkownik_Logowanie”冲突。数据库发生冲突 “Restauracja”,表“dbo.Logowanie”,列“LoginID”。
该语句已终止。
我使用断点检查这一点,并在断点(运行应用程序)之后添加了Logowanie 表中的主键
baza.SubmitChanges();
logowanie 表中LoginID 的主键在SubmitChanges 期间自动添加。
如何将LoginID 的值从logowanie 表复制到uztkownik 表中的LoginID?我在这里添加了外键值,但是这里LoginID还没有值。
Logowanie newlog = new Logowanie()
{
Login = model.LoginModel.Użytkownik,
Haslo = model.LoginModel.Hasło,
konto = model.LoginModel.Konto
};
uzytkownik user = new uzytkownik()
{
imie = model.uzytkownikModle.imie,
nazwisko = model.uzytkownikModle.nazwisko,
pesel = model.uzytkownikModle.pesel,
nip = model.uzytkownikModle.nip,
telefon = model.uzytkownikModle.telefon,
adres_zamieszkania = model.uzytkownikModle.adres_zamieszkania,
email = model.uzytkownikModle.email,
LoginID = newlog.LoginID //<<<----------------
};
baza.Logowanies.InsertOnSubmit(newlog);
baza.uzytkowniks.InsertOnSubmit(user);
baza.SubmitChanges();
【问题讨论】:
-
假设您在数据库中有 FK 关系 - 您的 Linq-to-SQL 模型在这两个实体之间是否也有“链接”?例如。
user对象是否具有某种Login(作为登录对象 - 不仅仅是 ID)属性? -
我的 Linq-to-SQL 有一个“链接”
Logowanie.LoginID -> uzytkownik.LoginIDimageshack.us/photo/my-images/507/unledgb.jpg" width="100" height="100">
标签: c# asp.net database asp.net-mvc-3 foreign-keys