猿问

从VS2010发布时,allowDefinition ='MachineToApplication'

我可以在本地计算机上运行Asp.Net MVC 2应用程序而不会出现问题。只需运行/调试。


但是,如果我已经构建了它,就无法发布它!我必须清理解决方案,然后再次发布。我知道这不是系统关键,但确实很烦人。“一键发布”不是“先清除解决方案,然后一键发布”


确切的错误如下:


错误11使用超出应用程序级别注册为allowDefinition ='MachineToApplication'的节是错误的。此错误可能是由于未在IIS中将虚拟目录配置为应用程序引起的。


森林海
浏览 523回答 3
3回答

繁华开满天机

我从obj / Debug文件夹中删除了所有内容,并修复了此错误。这让我离开了<MvcBuildViews>true</MvcBuildViews>选项在我的项目文件中(随T4MVC T4模板一起提供)。编辑:只需使用“构建”->“重建解决方案”菜单即可轻松实现这一目的(因为重建实际要做的是清除obj / Debug文件夹,然后生成解决方案)。

HUX布斯

我在MS Connect页面上使用此替代方法来解决此错误。在运行AspNetCompiler之前,它将清除项目(所有配置)下的所有obj和temp文件。修改项目文件中的MvcBuildViews目标,使其依赖于清理Visual Studio创建的打包文件的目标。这些目标自动包含在Web应用程序项目中。每次执行MvcBuildViews目标时,所有打包文件都将被删除。<Target Name="MvcBuildViews" AfterTargets="AfterBuild" Condition="'$(MvcBuildViews)'=='true'" DependsOnTargets="CleanWebsitesPackage;CleanWebsitesPackageTempDir;CleanWebsitesTransformParametersFiles;">&nbsp; &nbsp; <AspNetCompiler VirtualPath="temp" PhysicalPath="$(MSBuildProjectDirectory)" /></Target>
随时随地看视频慕课网APP
我要回答