/// <summary> /// Executa a atualização criando a tabela de notificações e os registros para os usuários cadastrados /// </summary> public override void Up() { this.FabricaSessao = AuxiliarNHibernate.ObtemFabricaSessao(); var sessao = this.FabricaSessao.OpenSession(); CurrentSessionContext.Bind(sessao); sessao.BeginTransaction(); List <Usuario> usuarios = (List <Usuario>)GerenciamentoUsuario.CarregaUsuarios(); // Notificacao Create.Table("notificacao") .InSchema("dbo") .WithColumn("id").AsInt32().NotNullable().PrimaryKey().Identity() .WithColumn("id_usuario").AsInt32().NotNullable() .WithColumn("ultima_notificacao").AsInt64().NotNullable(); // Controle de notificação dos usuários int indice = 1; foreach (Usuario usuario in usuarios) { Insert.IntoTable("notificacao").WithIdentityInsert().Row(new { id = indice, id_usuario = usuario.Id, ultima_notificacao = 0 }); indice++; } var transacao = sessao.Transaction; if (transacao != null && transacao.IsActive) { transacao.Commit(); } sessao = CurrentSessionContext.Unbind(this.FabricaSessao); sessao.Close(); }
/// <summary> /// Executa a atualização, criando as novas colunas de usuário /// </summary> public override void Up() { this.FabricaSessao = AuxiliarNHibernate.ObtemFabricaSessao(); var sessao = this.FabricaSessao.OpenSession(); CurrentSessionContext.Bind(sessao); sessao.BeginTransaction(); // Usuário Alter.Table("usuario") .InSchema("dbo") .AddColumn("usuario_spedia").AsString().Nullable() .AddColumn("senha_spedia").AsString().Nullable(); var transacao = sessao.Transaction; if (transacao != null && transacao.IsActive) { transacao.Commit(); } sessao = CurrentSessionContext.Unbind(this.FabricaSessao); sessao.Close(); }
/// <summary> /// Inicia uma nova instância da classe <see cref="RepositorioBase{DT}"/> /// </summary> public RepositorioBase() { this.Sessao = AuxiliarNHibernate.ObtemFabricaSessao().GetCurrentSession(); }
/// <summary> /// Inicia uma nova instância da classe <see cref="Global"/> /// </summary> public Global() { this.FabricaSessao = AuxiliarNHibernate.ObtemFabricaSessao(); }