一切进展顺利,直到几天前,当UWP在从VSTS(git)提取新版本并出现错误后突然停止构建:
我的解决方案结构如下:
UWP引用了Mobile,而Mobile引用了Core(Web API项目也引用了Core)。
我从源代码管理中提取的提交对X.Mobile.UWP .csproj文件没有任何更改。
我尝试过的事情:
几天来,我一直在不停地思考这个问题。 Android和iOS项目的构建都很好,考虑到UWP是我们最稳定的平台,这具有讽刺意味。有人有见识吗?
编辑: 将对X.Core的引用直接添加到X.Mobile.UWP项目之后,即可进行编译。尽管这不是答案,因为UWP从未直接引用Core。
答案 0 :(得分:0)
我找到了解决方法。
我遇到了同样的问题,因为我在Xamarin.Forms解决方案中添加了一个新的(.Net Standard 2.0类库)项目。
简而言之,最初我的解决方案包括以下项目:
BackgroundTaskTest (which have all my Views and ViewModels)
BackgroundTaskTest.Android
BackgroundTaskTest.iOS
BackgroundTaskTest.UWP
突然我决定在同一解决方案文件夹中添加一个名为“ BackgroundTaskTest.Common”的类库:
BackgroundTaskTest.Common (new one)
BackgroundTaskTest (which have all my Views and ViewModels)
BackgroundTaskTest.Android
BackgroundTaskTest.iOS
BackgroundTaskTest.UWP
Android可以很好地工作,但是UWP项目不喜欢那个新邻居(在您的情况下为“ X.Core”)。因此,我将类从该新项目中再次移至“ BackgroundTaskTest”,并从我的解决方案中删除了带有所有引用的“ BackgroundTaskTest.Common”,并且该程序已开始工作。
要完成并简短起见,请将X.Mobile.csproj文件与X.Mobile.Core.csproj文件进行比较。您会发现差异中的问题。另外,请尝试检查对X.Core项目的所有依赖关系,以确保它们相同。
答案 1 :(得分:0)
我安装了NuGet软件包“ NETStandard.Library”,并将对我所有.Net Standard库的引用添加到了UWP项目中。这为我解决了问题!