2

Visual Studio 2008 Web部署项目团队建立ASPPARSE错误Web部署项目团队构建错误

我似乎有一个共同的问题;一个正在显示,但没有明确的解决方案。

我有一个Visual Studio 2008项目结构,它包含几个类库,一个Web应用程序项目和一个最近添加的Web部署项目。我听说过MVC设置的这个问题。另外,我见过的解决方案假定正在使用MVC。

我已验证构建从IDE正确工作。我没有更改Web部署项目的默认设置,除了它作为单个程序集合并的结果生成的程序集的名称之外。

我已经将解决​​方案设置为只在解决方案构建为“发布”时才构建Web部署项目。我有一个自定义构建脚本来抓住这段代码和一段代码的开发分支。构建脚本正确地构建了此代码的发行版本和开发分支的调试版本。

构建发行版本时出现问题。除了Web部署项目外,所有项目都可以成功构建。用下面的错误建设这个项目时TFS生成错误:

/xx.csproj/global.asax(1): error ASPPARSE: Could not load type 'xxx.xx.Global'. 

的xx.csproj是Web应用程序项目和“xxx.xx.Global”是隐藏类在Global.asax代码。

从我的阅读看来,TFS Build可能会有一些复制问题。我在这里阅读了关于MVC的几个回复。这不是MVC设置,但我认为它有类似的问题。我不确定任何复制代码应该在哪里。我试过在TFSBuild.proj文件的AfterBuild目标中放置一些建议的代码,但发现代码没有改变这个错误。

<!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
     Other similar extension points exist, see Microsoft.WebDeployment.targets. 
    <Target Name="BeforeBuild"> 
    </Target> 
    <Target Name="BeforeMerge"> 
    </Target> 
    <Target Name="AfterMerge"> 
    </Target> 
    <Target Name="AfterBuild"> 
    </Target> 
    --> 

上面的代码出现在注释掉的项目文件中。我的想法是,'BeforeMerge'的目标会让我复制那些需要的二进制文件。我不知道如何编写任何脚本来做到这一点。我咨询了几本TFS书籍,但都没有包含有关Web部署项目的信息。 (很让我懊恼的是,我似乎也无法从微软那里找到关于这个问题的很多信息)。

看到我只看到引用MVC解决方案的解决方案,我应该说我已经研究过在AfterBuild目标中做什么。上面的构建脚本直接来自我在TSBuild脚本中尝试过的deploy_csproj。试图在任一位置复制二进制文件有什么不同?

任何人都可以解释发生了什么?我是否必须为每个项目编写单独的构建脚本,以便将它们的二进制文件复制到正确的目录以执行合并?

回答

相关问题