0

我有一个本地网站,我通过 Visual Studio 2008 的内部开发 Web 服务器运行(通过运行/编译按钮)。

我有一个外部库,该库在该网站的页面上被引用,并位于网站的“bin”文件夹中。

我最近在该库中更改了一个类的属性名称(将其重命名,从“ValidFrom”到“VisibleFrom”),重新编译了它的 dll 并覆盖了 bin 文件夹中的原始 dll。

此类使用 FluentNHibernate 进行映射,我还更改了映射并重新编译/重新部署了库。

当我尝试运行该站点并导航到使用该库的页面时,我得到方法get_ValidFrom的MethodNotFound异常,这与 FluentNHibernate 的配置调用有关。这应该是get_VisibleFrom现在!

现在我重新配置了我的 NHibernate SessionProvider 以便它在每次调用时为 NHibernate 生成一个新的配置,并且不会像以前那样从 Http Session 实体中检索它,因为我认为可能存在问题。

但是,我仍然遇到异常。然后我删除了临时 ASP.NET 文件夹的内容......但我仍然收到错误消息。

使用 FluentNHibernate 时,生成的 NHibernate 架构存储在哪里?

任何人都知道这可以在哪里以某种方式缓存?

谢谢

4

1 回答 1

0

FNH 不缓存架构,它是在您调用时即时生成的,Fluently.Configure()架构直接传递到 NHibernateConfiguration对象中,该对象用于构建ISessionFactory.

尝试清除所有已编译的对象/库/可执行文件,从所有使用它的项目中删除对库的引用,将其重新添加,然后重新编译所有内容。还要检查您的所有代码中是否有可能引用此属性或导致它被旧名称引用的“魔术字符串”。

如果这不起作用,查看堆栈跟踪以了解从何处调用什么可能会有所帮助。

于 2009-06-05T18:21:03.583 回答