Pergunta

Eu tenho um aplicativo da Web com uma camada de acesso a dados Nibernate. Eu tenho um grande número de preferências do usuário que podem ser armazenadas, elas são principalmente booleanos, por exemplo, registrando que uma caixa de diálogo foi descartada e não deve ser mostrada novamente.

O problema é que, com o Nibernate, preciso adicionar ao meu esquema de banco de dados e adicionar uma propriedade à classe persistente toda vez que uma nova caixa de diálogo for adicionada para se registrar se tiver sido descartada ou não.

Deve haver uma maneira mais fácil. O que é isso?

Foi útil?

Solução

Outra opção é ler isso publicar por Ayende, basicamente permitindo campos dinâmicos

Um tema comum em muitos aplicativos é a necessidade de suportar campos personalizados / dinâmicos. Em outras palavras, o administrador do sistema pode decidir que o cliente precisa ter alguns campos adicionais que não fazem parte do desenvolvimento da linha principal.

Leia também o último comentário de Ayende

  • Você pode colocar uma coleção em uma propriedade dinâmica.
  • Você pode editar a configuração programaticamente

Editar Por alguma razão, acabei de perceber que respondi a essa pergunta que tem mais de um ano! Não tenho ideia de como cheguei aqui! A resposta ainda é boa embora

Outras dicas

Você pode usar uma tabela de configurações para armazenar as preferências e agregar um valor a cada diálogo:

Tabela Configurações ID, UserID, Dialogname, Valor

1, 1, FirstDialog, verdadeiro

2, 1, SecondDialog, falso

3, 2, FirstDialog, falso

4, 2, SecondDialog, falso

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