【问题标题】:Reference to type 'Assembly' claims it is defined in 'System.Runtime', but it could not be found对“Assembly”类型的引用声称它在“System.Runtime”中定义,但找不到
【发布时间】:2018-10-21 16:12:39
【问题描述】:

自从更新到 VS2017 15.7.1 后,我的 Xamarin PCL 项目在 UWP App.xaml.cs 文件中显示以下错误。

错误 CS7069 引用类型“Assembly”声称它是在“System.Runtime”中定义的,但找不到

下面复制了违规行。 IntelliSense 在线工作。

Xamarin.Forms.Forms.Init(e);

现在也有很多冲突警告信息,例如; 警告 发现不同版本的“System.Net.Http”之间存在无法解决的冲突。

目标 .NET 框架是 4.5,所有 NuGet 库都是最新的。

到目前为止,我已尝试添加 System.Runtime 作为参考并重新安装所有 NuGet 库以消除错误但没有成功。

我仍在寻找有关 Xamarin 的方法,任何解决此问题的指导将不胜感激。

谢谢, 左撇子

【问题讨论】:

    标签: c# xamarin printer-control-language


    【解决方案1】:

    这件事最近发生在我身上。这是从使用 PCL 创建 Xamarin 应用程序并将目标从 .NET Standard 2.0 更改为 .NET Standard 1.4。在所有项目中将 Xamarin.Forms 从版本 3.0.0.446417 降级到版本 2.5.1.527436 后,它编译没有错误。

    说明(根据请求): 如果您在 Fall Creators Update(版本 6.332)之前定位,则需要删除对 .NET Standard 2.0 的所有引用。

    Xamarin Forms 3.x 使用 .NET 标准 2.0。由于您的目标是秋季创作者更新(版本 6.332),因此 PCL 需要是 .NET Standard 1.x。

    更多信息here

    【讨论】:

    • 按照建议,卸载当前版本并运行 PM> Install-Package Xamarin.Forms -Version 2.5.1.527436,项目已编译。谢谢瑞恩!
    • 较新版本的 Xamrin.Forms(版本 3.0+)使用 .NET Standard 2.0。由于您引用的是 .NET Standard 1.X,因此缺少 Xamarin 3.X 中所需的 API。
    • 您能否编辑答案以澄清这一事实(即您需要升级 netstandard2.0 才能解决此问题)?
    【解决方案2】:

    我在安装 Xamarin Forms 3.0.0.446417 时遇到了同样的问题。我刚回到之前的版本,2.5.1.527436,但后来我的 Android 项目失败,“项目中不存在目标“CssG”。”

    该版本的 Xamarin Forms 似乎存在问题。

    【讨论】:

    • 我也在使用 .NET Standard 1.4,因为我在旧版 WinPhone 上进行测试。
    • Xamarin - 由黑猩猩为我们笨蛋设计
    猜你喜欢
    • 2021-09-08
    • 1970-01-01
    • 1970-01-01
    • 2018-11-23
    • 2018-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多