Abaixo será apresentado como fazer conexão.
Classe NHibernateHelper.cs
public static class NHibernateHelper
{
private static string StringConexao = "coloque aqui sua string de conexão";
private static ISessionFactory _sessionFactory;
public static ISessionFactory SessionFactory
{
get
{
if (_sessionFactory == null)
Configurar();
return _sessionFactory;
}
}
public static void Configurar()
{
FluentConfiguration configuracao = Fluently.Configure()
.Database(MsSqlConfiguration.MsSql2012
.ConnectionString(StringConexao)
.ShowSql())
.Mappings(c => c.FluentMappings.AddFromAssembly(Assembly.GetExecutingAssembly()))
.ExposeConfiguration(c => new SchemaUpdate(c).Execute(true, true));
_sessionFactory = configuracao.BuildSessionFactory();
}
public static ISession AbrirSessao()
{
return _sessionFactory.OpenSession();
}
}
Vamos agora criar método Inserir a qual fará chamada à nossa classe NHibernateHelper.
public void Inserir(T entidade)
{
using (ISession session = NHibernateHelper.AbrirSessao())
{
using (ITransaction transacao = session.BeginTransaction())
{
try
{
session.Save(entidade);
transacao.Commit();
}
catch (Exception ex)
{
if (!transacao.WasCommitted)
{
transacao.Rollback();
}
throw new Exception("Erro ao inserir registro. " + ex.Message);
}
}
}
}
Este blog é básico e não tem objetivo de aprofundar em teorias, pois uma simples pesquisa no google você encontrará diversos sites com muitas teorias.
O objetivo é ser simples e coeso para que pessoas iniciantes na área possam ter o mínimo de direcionamento sem que haja dúvidas sobre qual metodologia seguir.
Exitem diversos padrões de projetos a serem seguidos cabe a cada um escolher o que mais for interessante para seu projeto.
Espero que gostem!