2013-07-03 58 views
0

我們有使用Mvvmcross的跨平臺項目(WPF和ios)。Mvvmcross插件實現證書

我們希望在HttpWebRequest中使用憑證,但我們使用PCL庫。所以我們創建了mvvmcross插件來使用System.Net.CredentialCache.DefaultNetworkCredentials。

我們的插件接口返回存在於WPF和Xamarin中的System.Net.ICredentials。

在WPF應用程序中它工作得很好,但ios插件不能編譯。

Le type 'System.Net.ICredentials' est défini dans un assembly qui n'est pas référencé. Vous devez ajouter une référence à l'assembly 'System.Net, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes'. 

我們嘗試使用mvvmcross中的System.Net.Touch,但我們遇到同樣的錯誤。

我們已經提取了Profile104的System.Net.dll的公鑰並給定製的dll提供2.0.5.0版本。 我們的csproj添加此行:

<SignAssembly>true</SignAssembly> 
<AssemblyOriginatorKeyFile>..\Signing\system_net.snk</AssemblyOriginatorKeyFile> 
<DelaySign>true</DelaySign> 

但它不工作。

有沒有想法?

謝謝,

回答

1

有幾種可能的解決方案。

我能想到的最簡單的2級的解決方案是:

  1. 要建立一個版本OSX下你的插件DLL的,當你部署到iOS使用該版本。

  2. 切換到新的Xamarin alpha版本,並試圖讓代碼在那裏工作。這些新版本具有官方PCL支持,並且包括官方支持 - 包括來自的官方墊片程序集,兩者均爲 Xamarin和Microsoft。

就我個人而言,我將重點放在第二個選項 - 因爲無論如何我們都需要這麼做!

+0

它適用於第二個選項,謝謝! – axvo