2009-07-21 9 views
0

Je pensais que vous pouviez le faire avec linq, mais cela génère toujours une erreur de clé étrangère et le ContactType.id est 0. Est-il nécessaire d'appeler SubmitChanges après avoir inséré le nouveau ContactType, ou suis-je? Il me manque quelque chose de basique?linq to sql @identity clé étrangère insertonsubmit

Dim ct As New ContactType 
ct.name = "supervisor" 
db.ContactTypes.InsertOnSubmit(ct) 

Dim c As New Contact 
c.ContactTypeId = ct.id 
c.first_name = "fname" 
c.last_name = "lname" 
db.contacts.InsertOnSubmit(c) 

db.SubmitChanges() 

Répondre

1

répondues par lucas dans ce question

Il est nécessaire de définir l'objet ContactType, pas la valeur de clé étrangère.

Dim ct As New ContactType 
ct.name = "supervisor" 
db.ContactTypes.InsertOnSubmit(ct) 

Dim c As New Contact 
c.ContactType = ct 'this is the important line 
c.first_name = "fname" 
c.last_name = "lname" 
db.contacts.InsertOnSubmit(c) 

db.SubmitChanges() 

Merci Lucas!