无法安装软件包&System; Security.SecureString'

时间:2017-05-02 23:32:49

标签: c# xamarin nuget portable-class-library securestring

我无法安装软件包System.Security.SecureString'在我的PCL中。

我尝试了一些在线解决方案,例如将project.json添加到PCL但没有任何作用

这是错误日志

  

尝试收集包的依赖关系信息   ' System.Security.SecureString.4.3.0'关于项目   ' TestProj',定位' .NETPortable,Version = v4.5,Profile = Profile259'
  得到   https://api.nuget.org/v3/registration1-gz/system.security.securestring/index.json   好   https://api.nuget.org/v3/registration1-gz/system.security.securestring/index.json   144ms收集的结果总数:15收集依赖关系   信息花了496.15 ms收集时间总结   每个来源的依赖项:https://api.nuget.org/v3/index.json - 172.87   ms尝试解析包的依赖关系   ' System.Security.SecureString.4.3.0'与DependencyBehavior'最低'   解析依赖关系信息花了0毫秒解决操作   安装包' System.Security.SecureString.4.3.0'已解决的操作   安装包' System.Security.SecureString.4.3.0'检索   package' System.Security.SecureString 4.3.0'来自' nuget.org'。对于   添加包' System.Security.SecureString.4.3.0'项目   ' TestProj'目标是“portable45-net45 + win8 + wp8 + wpa81'”。安装   失败。回滚...... Package&System; Security.SecureString.4.3.0'   在项目' TestProj'中不存在包   ' System.Security.SecureString.4.3.0'文件夹中不存在   ' / Users / durai / Documents / BTFleet / BT Fleet / _git / DailyCheckApp / packages'   执行nuget操作需要136.1 ms无法安装包   ' System.Security.SecureString 4.3.0'。您正在尝试安装此功能   打包成一个目标项目   ' .NETPortable,Version = v4.5,Profile = Profile259',但包有   不包含任何程序集引用或内容文件   与该框架兼容。有关更多信息,请联系   包裹作者。

欢迎任何成功安装包的帮助!

1 个答案:

答案 0 :(得分:0)

.NET的System.Security API不支持PCL,因此无法在PCL项目中添加。

但是,它可以添加到Xamarin解决方案的其他项目中 - 您可以将其添加到Android和iOS项目等本机项目中。因为您可以在那里添加它,您可以在这些项目上创建实现,并通过PCL中的Dependency Service调用这些实现。

高级步骤是:

1。)在PCL中创建一个界面。

2。)在该界面中创建一个将在Android或iOS项目中实现的方法。

3.)将System.Security.SecureString的Nuget包添加到本机项目中。

4.。)在您的本机代码中创建一个类,该类将从PCL实现该接口。

5.。)通过DependencyService从您的PCL调用此代码。

有关如何执行此操作的示例,请参阅此link

这是漫长而乏味但值得的。