我们有一个 Xamarin 项目,该项目与 android 和 ios 项目共享代码。 我们计划通过创建和定位 UWP 项目来扩展此共享。 因此,为了测试我的项目对 UWP 的可移植性,我在Visual Studio中使用了.net portability analyzer extension。
运行后,我会得到以下可移植性摘要:
<h2 _locid="SummaryTitle">
<a name="Portability Summary"></a>Portability Summary
</h2>
<table>
<tbody>
<tr>
<th>Assembly</th>
<th>UWP,Version=v10.1</th>
</tr>
<tr>
<td><strong><a href="#Acme.PhoneBookDemo.Mobile.Shared, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null">
<span class="assembly-name">Acme.PhoneBookDemo.Mobile.Shared, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</span>
<span class="assembly-tfm">(.NETStandard,Version=v2.0)</span>
</a></strong></td>
<td class="text-center">99.67%</td>
</tr>
</tbody>
</table>
这意味着该项目与UWP 10.1兼容99.67%。
详细了解一下:
<table class="table_portability_details">
<tbody>
<tr>
<th>Target type</th>
<th>UWP,Version=v10.1</th>
<th>Recommended changes</th>
</tr>
<tr>
<td>Newtonsoft.Json.JsonConvert</td>
<td class="IconErrorEncoded" title="Not supported"></td> <td></td>
</tr>
<tr>
<td style="padding-left:2em"> DeserializeObject``1(System.String)</td>
<td class="IconErrorEncoded" title="Not supported"></td> <td></td>
</tr>
<tr>
<td style="padding-left:2em">SerializeObject(System.Object)</td>
<td class="IconErrorEncoded" title="Not supported"></td> <td></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
</tr>
</tbody>
</table>
描述了不支持 Newtonsoft 的问题。
您是否有可能解决该问题?
我按照@Stefan Wick MSFT的建议进行工作,我添加了一个UWP项目,并使用“ 16299 ”作为次要版本:
我仍然遇到同样的问题! ?