Como definir relações de dados em LightSwitch
Você pode criar, modificar ou excluir relações entre dados usando o designer de dados no LightSwitch. Usando as relações, você pode criar telas em que os dados relacionados funcionam juntos (por exemplo, uma tela que mostra tanto clientes quanto seus pedidos).
Este documento contém as seguintes seções:
Adicionando uma relação entre tabelas ou entidades da mesma fonte de dados
Adicionando uma relação entre tabelas ou entidades de fontes de dados separadas
Modificando uma relação
Configurações de multiplicidade
Configurações do comportamento de exclusão
Para uma demonstração em vídeo relacionada, consulte Como definir meus dados em um aplicativo LightSwitch?.
Adicionando uma relação entre tabelas ou entidades da mesma fonte de dados
Você pode usar o designer de dados do LightSwitch para adicionar uma relação entre duas tabelas no banco de dados interno do LightSwitch. Em alguns casos, você também pode usar o designer de dados para adicionar uma relação entre entidades da mesma fonte de dados externa. Caso contrário, você deve criar essas relações no servidor e então atualizar a conexão de dados no LightSwitch. Para obter mais informações sobre como atualizar uma conexão para uma fonte de dados, consulte Como conectar a dados.
Para adicionar uma relação entre tabelas no banco de dados interno do LightSwitch
No Gerenciador de Soluções, abra o menu de atalho de uma das tabelas que você deseja usar na relação e escolha Abrir.
Dica
Para aplicativos que foram atualizados para o Atualização 2 do Visual Studio 2012, na barra Perspectiva, escolha a guia Servidor.
No Designer de Dados, na barra de comandos, escolha o botão Relação.
Na caixa de diálogo Adicionar Nova Relação, na linha Nome, escolha as duas tabelas às quais você deseja aplicar uma relação (por exemplo, Clientes e Pedidos).
Na linha Multiplicidade, especifique como deseja que essas tabelas sejam relacionadas.
Consulte Configurações de multiplicidade.
Na linha Comportamento de Exclusão, especifique o que você deseja que seu aplicativo fará se um usuário tentar excluir um registro em uma tabela, mas os dados ainda existirem no registro relacionado na outra tabela (por exemplo, se um usuário tentar excluir um cliente, mas os pedidos feitos pelo cliente ainda existirem).
Consulte Configurações do comportamento de exclusão.
Na linha Propriedade de Navegação, digite um nome para cada propriedade de navegação e escolha o botão OK.
As propriedades de navegação ajudam os usuários na navegação entre as áreas de uma tela que exibem dados relacionados. As propriedades de navegação também aparecem como objetos no IntelliSense, e você pode usá-los para construir expressões LINQ no código.
Para adicionar uma relação entre tabelas em um banco de dados anexado
No Gerenciador de Soluções, abra o menu de atalho de uma das tabelas que você deseja usar na relação e escolha Abrir.
Dica
Para aplicativos que foram atualizados para o Atualização 2 do Visual Studio 2012, na barra Perspectiva, escolha a guia Servidor.
No Designer de Dados, na barra de comandos, escolha o botão Relação.
A caixa de diálogo Adicionar Novo Relacionamento é aberta.
Na coluna Para da linha Nome, escolha a tabela à qual você deseja aplicar uma relação.
A tabela deve conter uma chave primária que será usada no lado primário da relação.
Na linha Multiplicidade, especifique como deseja que essas tabelas sejam relacionadas.
Consulte Configurações de multiplicidade.
Na grade de dados que aparece próxima à parte inferior da caixa de diálogo Adicionar Nova Relação, escolha uma propriedade no lado Estrangeiro da relação.
Essa propriedade deve corresponder ao tipo de dados da propriedade de chave Primária.
Dica
Se a tabela contiver uma chave primária composta, todos os tipos de dados da chave estrangeira deverão coincidir.
Dica
Para uma relação de zero ou um para muitos, a propriedade da chave Estrangeira não pode ser um campo obrigatório.Para uma relação um para muitos, a propriedade de chave Estrangeira deve ser um campo obrigatório.Para uma relação de zero ou um para um, os valores de chave primária devem ser usados em ambos os lados da relação.
Escolha o botão OK.
Adicionando uma relação entre tabelas ou entidades de fontes de dados separadas
Você pode usar o designer de dados do LightSwitch para adicionar uma relação entre tabelas ou entidades de fontes de dados diferentes. Por exemplo, você pode adicionar uma relação entre uma tabela no banco de dados interno do LightSwitch e uma entidade de uma lista do SharePoint.
Para adicionar uma relação entre duas tabelas ou entidades de fontes de dados separadas
No Gerenciador de Soluções, abra o menu de atalho de uma das tabelas que você deseja usar na relação e escolha Abrir.
Dica
Para aplicativos que foram atualizados para o Atualização 2 do Visual Studio 2012, na barra Perspectiva, escolha a guia Servidor.
No Designer de Dados, na barra de comandos, escolha o botão Relação.
A caixa de diálogo Adicionar Novo Relacionamento é aberta.
Na linha Nome, escolha as tabelas ou as entidades às quais você deseja aplicar uma relação (por exemplo, Clientes e Pedidos).
Na linha Multiplicidade, especifique como você deseja que essas tabelas ou entidades sejam relacionadas.
Consulte Configurações de multiplicidade.
Dica
Observe que a linha Comportamento de Exclusão não está habilitada para esse tipo de relação.
Na linha Propriedade da Navegação, dê um nome para cada propriedade da navegação.
As propriedades de navegação ajudam os usuários na navegação entre as áreas de uma tela que exibem dados relacionados. As propriedades de navegação também aparecem como objetos no IntelliSense, e você pode usá-los para construir expressões LINQ no código.
Na grade de dados que aparece próxima à parte inferior da caixa de diálogo Adicionar Nova Relação, escolha uma propriedade de uma tabela ou entidade e uma propriedade relacionada na outra tabela ou entidade e escolha o botão OK.
Essas propriedades são onde as tabelas ou entidades são vinculadas. Por exemplo, você poderia escolher a propriedade ID de uma entidade Cliente e a propriedade CustomerID de uma entidade Pedido.
Modificando uma relação
Você pode usar o designer de dados do LightSwitch para modificar ou excluir uma relação.
Para alterar uma relação existente
No Gerenciador de Soluções, abra o menu de atalho de uma das tabelas que você está usando na relação e escolha Abrir.
Dica
Para aplicativos que foram atualizados para o Atualização 2 do Visual Studio 2012, na barra Perspectiva, escolha a guia Servidor.
No Designer de Dados, escolha a propriedade de navegação que representa a relação com outra entidade ou tabela.
Por exemplo, uma entidade Cliente pode ter uma propriedade chamada Pedidos que seja usada como uma propriedade de navegação na relação Cliente-Pedidos.
Na janela Propriedades, escolha o link Editar propriedades da relação.
A caixa de diálogo Editar Relação é aberta.
Para modificar a relação, consulte a seção apropriada mais à frente neste tópico:
Adicionando uma relação entre entidades da mesma fonte de dados.
Adicionando uma relação entre entidades das fontes de dados separadas.
Escolha o botão OK para fechar a caixa de diálogo Editar Relação.
Para excluir uma relação
No Gerenciador de Soluções, abra o menu de atalho de uma das tabelas que você está usando na relação e escolha Abrir.
Dica
Para aplicativos que foram atualizados para o Atualização 2 do Visual Studio 2012, na barra Perspectiva, escolha a guia Servidor.
No Designer de Dados, abra o menu de atalho da linha de conexão que representa a relação com outra entidade ou tabela e escolha Excluir Relações.
Configurações de multiplicidade
A tabela a seguir descreve as combinações de configurações de multiplicidade que você pode escolher no LightSwitch.
Valor De |
Valor Para |
Descrição |
---|---|---|
Uma |
Zero ou um |
Um "De" pode ter um ou nenhum "Para", mas um "Para" deve ter um "De". |
Uma |
Muitos |
Um "De" pode ter muitas instâncias "Para", mas um "Para" deve ter um "De". |
Zero ou um |
Uma |
Um "De" deve ter um "Para", mas um "Para" pode ter um ou nenhum "De". |
Zero ou um |
Muitos |
Um "De" pode ter muitas instâncias "Para", e um "Para" pode ter um ou nenhum "De". |
Muitos |
Uma |
Um "De" deve ter um "Para", mas um "Para" pode ter muitas instâncias "De". |
Muitos |
Zero ou um |
Uma instância "De" pode ter um ou nenhum "Para", e um "Para" pode ter muitas instâncias "De". |
Dica
Você não pode especificar uma relação um-para-um, zero ou um-para-zero ou um e muitos-para-muitos usando o designer de dados do LightSwitch.
Configurações do comportamento de exclusão
A tabela a seguir descreve as opções que você pode definir para controlar o que acontece quando um usuário tenta excluir um registro que faz parte de uma relação. Algumas opções não estão disponíveis para certos tipos de relações.
Valor de Comportamento de Exclusão |
Descrição |
---|---|
Exclusão em cascata |
Quando um "Table1" for excluído, exclua todas as instâncias de "Table2" relacionadas. |
Restrito |
"Table1" não poderá ser excluído se houver instâncias de "Table2" relacionadas. Por exemplo, escolha Restrito para especificar que um cliente não poderá ser excluído se o banco de dados contiver pedidos relacionados. |
Desassociar |
Quando "Table1" for excluído, defina a referência para "Table1" em instâncias de "Table2" relacionadas como null. |