Pergunta

Eu tenho uma configuração de tabela bastante padrão em um aplicativo atual usando o .LÍQUIDO XSD DataSet e TableAdapter características.Meu contracts tabela consiste em algumas informações padrão do contrato, com uma coluna para o primary department.Esta coluna é uma chave estrangeira para o meu Departments tabela, onde guardo o básico department name, id, notes.Tudo isso está configurado e funcionando no meu servidor SQL.

Quando uso a ferramenta XSD, posso arrastar as duas tabelas de uma vez e ela detecta/cria automaticamente a chave estrangeira que tenho entre essas duas tabelas.Isso funciona muito bem quando estou na página principal e visualizando dados do contrato.

No entanto, quando vou para minha página administrativa para modificar os dados do departamento, normalmente faço algo assim:

Dim dtDepartment As New DepartmentDataTable()
Dim taDepartment As New DepartmentTableAdapter()

taDepartment.Fill(dtDepartment)

No entanto, neste ponto, uma exceção é lançada dizendo que há uma referência de chave estrangeira quebrada aqui, suponho que já que não tenho o Contract DataTable preenchido.

Como posso resolver este problema?Eu sei que posso simplesmente remover a chave estrangeira do XSD para fazer as coisas funcionarem bem, mas é bom ter a verificação de integridade adicional e fazer com que o esquema XSD corresponda ao esquema SQL no banco de dados.

Foi útil?

Solução

Você pode tentar desativar as restrições de verificação no DataSet (está em suas propriedades) ou alterar as propriedades desse relacionamento e alterar a chave para uma referência simples - você decide.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top