【发布时间】:2010-12-17 14:48:18
【问题描述】:
当我尝试从 Structuremap 获取 NHibernate Session 的实例时,如果由于某种原因找不到数据库,是否可以在 ASP.NET MVC 应用程序中正常恢复?
public static class StructureMap
{
private static Configuration Cfg
{
get
{
var configuration = new Configuration().Configure(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "nhibernate.config"));
configuration.SetProperty(NHibernate.Cfg.Environment.ConnectionStringName, "MyConnectionString");
return configuration;
}
}
public static void ConfigureStuctureMap()
{
ObjectFactory.Initialize(x =>
{
x.ForRequestedType<ISessionFactory>()
.CacheBy(InstanceScope.Singleton)
.TheDefault.Is.ConstructedBy(Cfg.BuildSessionFactory);
x.ForRequestedType<ISession>()
.CacheBy(InstanceScope.HttpContext)
.TheDefault.Is.ConstructedBy(c => c.GetInstance<NHibernateSessionFactory>().GetCurrentSession());
});
}
}
现在应用程序将显示运行时错误 YSOD。我在 Web 配置中有一个自定义静态 html 错误页面设置,但即使我将自定义错误模式设置为“开”,它也不会显示
【问题讨论】:
标签: asp.net-mvc error-handling structuremap