Devops:错误CS0234:类型或名称空间名称'ApplicationModel'在名称空间'Windows'中不存在 [英] Devops: Error CS0234: The type or namespace name 'ApplicationModel' does not exist in the namespace 'Windows'
问题描述
I am trying to set up a build pipeline for the Windows Universal Sample Application File Access Project.
管道正在使用Azure Pipelines托管VS2017映像
The pipeline is using the Azure Pipelines Hosted VS2017 Image
当我在VS中本地运行该解决方案时,该解决方案就会构建.
The solution builds when I run it in VS locally.
Package.appxmanifest包含
Package.appxmanifest contains
<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.10586.0" MaxVersionTested="10.0.17763.0" />
当管道尝试构建时,在构建任务日志中会出现以下错误.
When the pipeline tries to build the following error appears in the build task log.
Error CS0234: The type or namespace name 'ApplicationModel'
does not exist in the namespace 'Windows'
(are you missing an assembly reference?)
YAML是
resources:
- repo: self
queue:
name: Hosted VS2017
demands:
- msbuild
- visualstudio
steps:
- task: NuGetCommand@2
displayName: 'NuGet restore'
- task: VSBuild@1
displayName: 'Build solution **\*.sln'
项目在我的机器上看起来像这样
The project looks like this on my machine
哪里
它可以正常运行.
我注意到Nuget Restore任务的日志没有错误,并且会报告
I notice the log for the Nuget Restore task has no errors and does report
2018-12-16T01:27:31.8700773Z Checking compatibility for Microsoft.NETCore.Targets.UniversalWindowsPlatform 5.0.0 with UAP,Version=v10.0 (win10-x86-aot).
2018-12-16T01:27:31.8700831Z Checking compatibility for Microsoft.NETCore.Platforms 1.0.0 with UAP,Version=v10.0 (win10-x86-aot).
2018-12-16T01:27:31.8700878Z All packages and projects are compatible with UAP,Version=v10.0 (win10-x86-aot).
[更新]
查看我的SDK所在计算机上的位置
Looking at the location on my machine of the SDK
C:\Program Files (x86)\Windows Kits\10\References\10.0.17763.0\Windows.AI.MachineLearning.MachineLearningContract\1.0.0.0
我想知道Nuget是如何知道这一点的. 确实,我想知道为什么它会在某种程度上涉及MachineLearning.
I wonder how Nuget is meant to know about that. Indeed I wonder why it has something about MachineLearning in the path.
[更新]
我将版本更改为17134(RS4/1803),而不是Stefan Wick MSFT建议的版本17763(RS5/1809)
I changed versions to 17134 (RS4/1803) instead of 17763 (RS5/1809) as suggested by Stefan Wick MSFT
错误更改为
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\Microsoft\VisualStudio\v15.0\AppxPackage\Microsoft
.AppXPackage.Targets(3218,5): Error APPX0101: A signing key is required in
order to package this project. Please specify a PackageCertificateKeyFile or
PackageCertificateThumbprint value in the project file.
Process 'msbuild.exe' exited with code '1'.
SharedContent\Templates\UWPSDKSampleCPP\ARM\Debug\UWPSDKSampleCPP\AppxManifest.xml(0,0):
Error APPX0501: Validation error. error C00CE169: App manifest validation
error: The app manifest must be valid as per schema: Line 10, Column 13,
Reason: 'Microsoft.SDKSamples.$safeprojectname$.CPP' violates pattern
constraint of '[-.A-Za-z0-9]+'. The attribute 'Name' with value
'Microsoft.SDKSamples.$safeprojectname$.CPP' failed to parse.
Process 'msbuild.exe' exited with code '1'.
SharedContent\Templates\UWPSDKSampleCS\bin\ARM\Debug\AppxManifest.xml(0,0):
Error APPX0501: Validation error. error C00CE169: App manifest validation error:
The app manifest must be valid as per schema: Line 10, Column 13, Reason: 'Microsoft.SDKSamples.$safeprojectname$.CS' violates pattern constraint of '[-.A-Za-z0-9]+'.
The attribute 'Name' with value 'Microsoft.SDKSamples.$safeprojectname$.CS' failed to parse.
Process 'msbuild.exe' exited with code '1'
推荐答案
该错误是由于您的应用程序针对1809 SDK(v17763)所致,该SDK尚未在构建代理上推出一些问题.
The error is due to the fact that your app is targeting the 1809 SDK (v17763), which has not been rolled out on the build agents yet, due to some issues.
在代理上将其推出之前,您有两种选择可以解除阻止:
Until it has been rolled out on the agents, you have two options to get unblocked:
- 如果您实际上不需要1809 SDK中的任何API,请定位到1803 SDK(v17134)-或
- 使用此脚本明确安装17763 SDK依赖项
- Target the 1803 SDK (v17134) if you don't actually need any APIs from the 1809 SDK - or
- Use this script to explicitely install the 17763 SDK dependency
一旦有关于SDK推出以构建代理的更新,我将更新答案.
I will update the answer once there is an update regarding the SDK rollout to build agents.
这篇关于Devops:错误CS0234:类型或名称空间名称'ApplicationModel'在名称空间'Windows'中不存在的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!