要成功启动,我的应用程序需要一些需要在数据库中存在的初始值。在Entity Framework中,我可以使用流畅的API(流畅的sql)创建迁移脚本,以便在应用程序启动时初始化我的数据库。
NHibernate也可以吗?可能还有FluentNHibernate?
答案 0 :(得分:0)
您可以通过手动创建实体并从数据库中写入/删除它们来完成此操作。
您还可以创建执行此操作的sql脚本,并通过执行以下操作手动运行它们:
using (ISession session = sessionFactory.OpenSession())
{
using (FileStream strm = File.OpenRead("Seed.sql"))
{
using (var reader = new StreamReader(strm))
{
string sqlDelete = reader.ReadToEnd();
try
{
IQuery query = session.CreateSQLQuery(sqlDelete);
query.ExecuteUpdate();
}
catch (Exception ex)
{
log.Fatal(ex.ToString());
}
}
}
}