我想为MonoDroid和MonoTouch创建PCL,共享代码AES加密(RijndaelManaged),但Visual Studio不允许我这样做,而是强迫我添加所有其他框架,消息如下:
将自动选择以下框架,因为它们支持在您选择的其他框架之间可移植的所有可用功能:.NET for Windows Store应用程序,.NET Framework 4.5,Windows Phone 8。
并且这些框架不支持System.Security.Cryptography命名空间。
MonoDroid和MonoTouch的文件放在C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework.NETPortable \ v4.5 \ Profile \ Profile78 \ SupportedFrameworks中,已经包含.NET for Windows Store apps.xml ,.NET Framework 4.5.xml,Windows Phone 8.xml。
有人可以建议如何将Mono框架与其他框架隔离,我是否需要新的资料或其他内容。
答案 0 :(得分:17)
修改
现在由安装程序自动完成。您还需要最新版本的nuget。
实际上,您需要做的就是将xml文件添加到正确的文件夹中。奇怪的是,将出现名为“Mono for Android”的PCL配置文件。
文件名:
MonoAndroid,Version=v1.6+.xml
放入文件夹:
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.0\Profile\Profile104\SupportedFrameworks
文件内容:
<?xml version="1.0" encoding="utf-8"?>
<Framework DisplayName="Mono for Android"
Identifier="MonoAndroid"
Profile="*"
MinimumVersion="1.6"
MaximumVersion="*" />
有关更多信息,请查看mvvmcross项目https://github.com/slodge/MvvmCross
答案 1 :(得分:-7)
Afaik的Visual Studio没有Xamarin产品的PCL配置文件。所以你不能选择它。
您可能希望尝试启用:.NET&gt; = 4.0.3和Silverlight 5以获取应与Xamarin产品兼容的配置文件。