我正在尝试为 3 个平台(ios、android、wp7.5)创建简单的 DataAccess 可移植类库。我想要的只是创建网络请求,转换数据并将其返回到每个平台的 UI。
我能够在 Mac OS X Xamarin Studio 下创建这样的库(便携式),并在 iPhone 应用程序中成功使用它。但是后来我在 Visual Studio 下打开了这个解决方案(以添加 Windows Phone UI 项目),它给了我构建错误的描述,它找不到 System.Net 命名空间。当我检查可移植类目标时,我惊讶地发现甚至选择了 XBOX:
当我选择正确的目标(MonoDroid/Monotouch/WindowsPhone7.5)时,我能够编译,但是当我启动应用程序时,我收到以下错误:
"c:\Downloads\Noname.CrossXam\Noname.CrossXam\Noname.CrossXam.iPhone\Noname.CrossXam.iPhone.csproj" (_RemoteBuild 目标) (1) -> (_ResolveAssemblies 目标) ->
C:\Program Files (x86 )\MSBuild\Xamarin\iOS\Xamarin.MonoTouch.Common.targets(68,3):错误:加载程序集时出现异常:System.IO.FileNotFoundException:无法加载程序集'System.Net,版本= 2.0.5.0,文化=中性,PublicKeyToken=7cec85d7bea7798e'。也许它在 MonoTouch 配置文件中不存在?...0 Warning(s) 1 Error(s)
相同的代码(相同的解决方案)在带有 Xamarin Studio 的 Mac OS X 下工作得很好。示例解决方案在这里: https ://dl.dropboxusercontent.com/u/19503836/Noname.CrossXam.zip
请指教。