Fluent Nhibernate 的配置
Configuration of Fluent Nhibernate
我是 NHibernate 的新手。我可以使用 Fluent Hibernate 的模式执行以下语句吗,如果 table 不存在,则创建新的 table,如果此 table 存在,则使用 Fluent Nhibernate 将值插入其中。
namespace ConsoleApplication1
{
public class Program
{
public string connectionString = "Server=127.0.0.1; Port=5432; User Id=credit; Password=123;Database=databir;";
public static ISessionFactory CreateSessionFactory()
{
ISessionFactory isessionFactory = Fluently.Configure()
.Database(PostgreSQLConfiguration.PostgreSQL81
.ConnectionString("Server=127.0.0.1; Port=5432; User Id=credit; Password=123;Database=databir;"))
.Mappings(m => m
.FluentMappings.AddFromAssemblyOf<MapUser>()).ExposeConfiguration(c => {
var schema = new SchemaExport(c);
schemaExport.Execute(true,false,false);
})
.BuildSessionFactory();
return isessionFactory;
}
static void Main(string[] args)
{
var staff = CreateSessionFactory();
using (ISession session = staff.OpenSession())
{
using (var txt = session.BeginTransaction())
{
user1 user = new user1
{
name = "jakhongir"
};
session.Save(user);
txt.Commit();
}
}
}
}
}
我无法插入到数据库中,它每次都在创建新的 table 要插入到 table 中,如果 table 不存在,请创建它使用此值
此代码...
var schema = new SchemaExport(c);
schemaExport.Execute(true,false,false);
...将在您每次创建 SessionFactory
时创建新表。您需要围绕此声明做出一些决定。 Updating 模式而不是导出它可能更合适?
我是 NHibernate 的新手。我可以使用 Fluent Hibernate 的模式执行以下语句吗,如果 table 不存在,则创建新的 table,如果此 table 存在,则使用 Fluent Nhibernate 将值插入其中。
namespace ConsoleApplication1
{
public class Program
{
public string connectionString = "Server=127.0.0.1; Port=5432; User Id=credit; Password=123;Database=databir;";
public static ISessionFactory CreateSessionFactory()
{
ISessionFactory isessionFactory = Fluently.Configure()
.Database(PostgreSQLConfiguration.PostgreSQL81
.ConnectionString("Server=127.0.0.1; Port=5432; User Id=credit; Password=123;Database=databir;"))
.Mappings(m => m
.FluentMappings.AddFromAssemblyOf<MapUser>()).ExposeConfiguration(c => {
var schema = new SchemaExport(c);
schemaExport.Execute(true,false,false);
})
.BuildSessionFactory();
return isessionFactory;
}
static void Main(string[] args)
{
var staff = CreateSessionFactory();
using (ISession session = staff.OpenSession())
{
using (var txt = session.BeginTransaction())
{
user1 user = new user1
{
name = "jakhongir"
};
session.Save(user);
txt.Commit();
}
}
}
}
}
我无法插入到数据库中,它每次都在创建新的 table 要插入到 table 中,如果 table 不存在,请创建它使用此值
此代码...
var schema = new SchemaExport(c);
schemaExport.Execute(true,false,false);
...将在您每次创建 SessionFactory
时创建新表。您需要围绕此声明做出一些决定。 Updating 模式而不是导出它可能更合适?