[Linq To SQL] Como impedir inserção em cascata  XML
Índice dos Fóruns » Outras Linguagens
Autor Mensagem
Rafael Afonso
Virtual Machine Man
[Avatar]
Membro desde: 05/12/2002 16:03:43
Mensagens: 719
Localização: São Paulo/SP
Offline

Olá:

Estou criando um sistema com C# 3.5 e LINQ to SQL. Tenho as tabelas tb_MF_TLOG e tb_bac_banco que estão mapeadas para as classes Mftlog e Banco respectivamente conforme o código abaixo:

Para inserir os dados uso o seguinte método na classe derivada de System.Data.Linq.DataContext:

Eu preencho Mftlog.Banco e na hora de inserir o LINQ preenche FkBanco (pelo menos foi o que entendi). Entretanto ao inserir Mftlog eu obtenho o seguinte erro:
Violation of PRIMARY KEY constraint 'PK__tb_bac_b__7ED6FD6A25869641'. Cannot insert duplicate key in object 'dbo.tb_bac_banco'

O erro acontece ao chamar SubmitChanges(). Aparentemente o LINQ tenta inserir um novo Banco em cascata ao inserir Mftlog. Mas eu não quero essa inserção em cascata.
O queria saber é se entre os atributos de mapeamento presentes em System.Data.Linq.Mapping existe algo equivalente ao elemento insertable da anotação JoinColumn do JPA. No código acima foram utilizados os atributos Column e Association. Mas não consegui achar nada na documentação que me ajudasse.

Grato,


Rafael Ubiratam Clemente Afonso
---------------------------------------
GitHub
ScalaFX
LinkedIn
[MSN]
Rafael Afonso
Virtual Machine Man
[Avatar]
Membro desde: 05/12/2002 16:03:43
Mensagens: 719
Localização: São Paulo/SP
Offline

Descobri o problema. Eu estava diferentes DataContexts para preencher os dados. Esta página me ajudou a resolver a questão.

Rafael Ubiratam Clemente Afonso
---------------------------------------
GitHub
ScalaFX
LinkedIn
[MSN]
 
Índice dos Fóruns » Outras Linguagens
Ir para:   
Powered by JForum 2.1.8 © JForum Team