引用类型'Assembly'声称它在'System.Runtime'中定义,但在Xamarin UWP中找不到

时间:2018-12-10 13:21:39

标签: xamarin.forms uwp

已经发现了相同的问题here

我的错误:

  

严重性代码描述项目文件行抑制状态   错误CS7069对“装配体”类型的引用声称它是在“ System.Runtime”中定义的,但找不到它

该线程上的解决方案是在所有项目中将xamarin表单降级为2.5.1.527436版本。但是我无法在我的项目中做到这一点,因为我正在使用一些最新的xamarin形式中可用的功能,例如android底部标签功能,编辑器的autosize属性和listview的flowdirection属性。

将xamarin表格从2.5.0.121934更新到3.4.0.1008975后,我遇到了这个问题。问题仅在UWP部分上。 Android和IOS应用程序运行正常。

错误行:

var rendererAssemblies = new List<Assembly>
   {
       typeof(ImageCircleRenderer).GetTypeInfo().Assembly
   };
rendererAssemblies.AddRange(Rg.Plugins.Popup.Popup.GetExtraAssemblies());
Rg.Plugins.Popup.Popup.Init();
Xamarin.Forms.Forms.Init(e, rendererAssemblies);

那么如何在不降级Xamarin.Forms的情况下解决此问题?

1 个答案:

答案 0 :(得分:2)

正如链接的线程所述,问题是您的应用必须将UWP的最低版本设置为Fall Creators Update(16299),因为这是第一个支持 .NET Standard 2.0 的版本。

版本3.0 中,Xamarin.Forms放弃了对可移植类库的支持,现在仅针对 .NET Standard 2.0 。这意味着您必须至少以UWP中的Fall Creators Update(16299)为目标,以确保可以对其进行引用。

要将UWP项目重新定位到较新版本,请在 Solution Explorer 中右键单击UWP项目节点,选择 Properties ,然后使用两个下拉菜单至少选择一个两者都为16299版本。

Version selection

只要您不需要支持Windows 10移动版,就可以更改Min版本,因为绝对的大多数用户已经在1803版上,而Fall Creators Update是1709版。请参见以下用法图(按{{ 3}})

AdDuplex