You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Website在VSTS中构建无对应模板及产物生成问题咨询

解决ASP.NET Website在VSTS(Azure DevOps)中的构建配置与csproj生成问题

先给你理清楚核心问题:ASP.NET Website(文件系统网站)和ASP.NET Web Application是两种不同的项目类型,前者没有.csproj文件,而VSTS默认的构建模板是为后者设计的,这就是你找不到对应模板、构建后无产物的原因。下面分两种方案解决你的问题:

方案一:生成.csproj文件(推荐,后续维护更方便)

方法1:通过Visual Studio转换为Web应用程序

  1. 打开VS2017,加载你的Website对应的.sln文件。
  2. 在解决方案资源管理器中,右键点击你的Website项目(注意不是解决方案),选择转换为Web应用程序。
  3. 这个操作会自动生成对应的.csproj文件,同时为每个ASPX/ASCX页面生成.designer.cs文件(如果之前没有的话)。
  4. 完成后,将新生成的.csproj和.designer.cs文件提交到TFS,之后就能在VSTS中使用标准的ASP.NET Web Application构建模板了——模板会自动识别.csproj,构建后也会正常生成可部署的产物。

方法2:新建Web Application项目迁移文件

如果转换选项找不到(比如某些版本的VS可能隐藏了这个选项),可以用这个方法:

  1. 在VS2017中新建一个空的ASP.NET Web Application项目,确保它的.NET版本和原Website一致。
  2. 将原Website中的所有文件(包括App_Code、App_Data、页面、配置文件等)复制到新建的Web Application项目目录下。
  3. 在VS中加载这个新项目的.sln,检查引用和配置是否正确,然后提交.csproj和所有文件到TFS。

方案二:不生成.csproj,直接在VSTS中配置自定义构建

如果你暂时不想转换项目,可以通过自定义MSBuild任务来完成构建并生成产物:

  1. 在VSTS中创建一个空的构建定义(不要选任何预设模板)。
  2. 添加获取源代码任务(默认会自动添加,确认TFS仓库路径正确即可)。
  3. 添加MSBuild任务,配置如下:
    • MSBuild版本:选择和你项目匹配的版本(比如VS2017对应的MSBuild 15.x)。
    • MSBuild参数:输入以下命令,替换你的解决方案文件名(如果有的话):
      /t:Build /p:Configuration=Release /p:DeployOnBuild=true /p:WebPublishMethod=FileSystem /p:PublishUrl=$(Build.ArtifactStagingDirectory)
      
      解释:DeployOnBuild=true告诉MSBuild在构建后执行发布,WebPublishMethod=FileSystem指定发布到本地文件系统,PublishUrl指向VSTS的工件暂存目录,这样产物会自动放到后续可以发布的位置。
    • 解决方案:如果有.sln文件,选择它;如果没有,直接留空或者指定网站的根目录(不过推荐用sln来管理)。
  4. 添加发布构建工件任务:
    • 工件名称:随便填一个(比如WebsiteArtifact)。
    • 工件发布位置:选择Azure Pipelines(或者你需要的其他位置)。
    • 要发布的路径:填写$(Build.ArtifactStagingDirectory),这样之前MSBuild发布的产物就会被上传到VSTS的工件库中。

为什么之前构建成功但无产物?

默认的ASP.NET构建模板会查找.csproj文件,执行针对Web Application的构建和发布流程,但你的Website没有.csproj,模板的发布步骤根本没触发——看起来构建“成功”只是因为它完成了解决方案的编译,但没有生成可部署的产物。自定义MSBuild任务通过显式指定发布参数,才会把网站打包成可部署的文件。

内容的提问来源于stack exchange,提问作者Shubham Khandelwal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 04:26:47