加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-3 – 陷入ASPNETCOMPILER:错误ASPRUNTIME:成员’F

发布时间:2020-12-16 03:33:41 所属栏目:asp.Net 来源:网络整理
导读:我正在使用Team City进行持续集成,用于.Net 4 ASP MVC 3应用程序. 在我的开发机器上,我可以构建并运行我的应用程序,但在构建服务器上,我收到以下错误: ASPNETCOMPILER : error ASPRUNTIME: Type is not resolved for member 'FluentNHibernate.Cfg.FluentCo
我正在使用Team City进行持续集成,用于.Net 4 ASP MVC 3应用程序.

在我的开发机器上,我可以构建并运行我的应用程序,但在构建服务器上,我收到以下错误:

ASPNETCOMPILER : error ASPRUNTIME: Type is not resolved for member 'FluentNHibernate.Cfg.FluentConfigurationException,FluentNHibernate,Version=1.2.0.712,Culture=neutral,PublicKeyToken=8aa435e3cb308880'

FluentNHibernate程序集由项目引用,我甚至已将程序集添加到web.config程序集部分,但我仍然收到错误.

我该怎么做才能诊断出这个问题?

解决方法

总结Rob White的评论,问题是某些代码在WebActivator.PreApplicationStartMethod中运行.修复是将该代码移动到Global.asax中的Application_Start.

WebActivator.PreApplicationStartMethod是一个程序集属性,用于在构建过程中尽早加载代码. Phil Haack给出了很好的描述.该属性应该用于注册构建提供程序以及稍后在构建过程中使用的其他内容.因此,ASPNET编译器必须加载并运行此代码才能开始编译视图.

在我将一些代码添加到访问资源(MongoDB)的IoC(StructureMap)启动代码后,我在appharbor上遇到了这个特殊错误.由于appharbor构建机器无法访问此资源,因此它会抛出各种错误.

需要注意的是,PreApplicationStartMethod用于预应用程序启动,例如构建,而不是初始化应用程序.如果您正在进行应用程序初始化,请在Global.asax Application_Start中执行此操作.我知道MVC4的默认StructureMap NuGet包使用属性而不是Global.可能还有其他软件包会导致您犯同样的错误.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读