我创建了一个Xamarin项目,该项目将以下项目添加到解决方案中:
Xamarin.UI(便携式)
Xamarin.UI.Droid
Xamarin.UI.iOS
Xamarin.UI.UWP
Xamarin.UI.Windows(Windows 8.1)
Xamarin.UI.WindowsPhone(Windows Phone 8.1)
我在创建可以使用我的WCF服务的客户端时遇到问题。
1)首先,当前的Xamarin项目模板没有引用PCL中的System.ServiceModel程序集,因此我无法右键单击PCL并向我的项目添加服务引用。当我从此位置手动添加对System.ServiceModel的引用时 - C:\ Program Files \ Reference Assemblies \ Microsoft \ Framework.NETFramework \ v4.5弹出创建服务引用的菜单项。当我在添加服务引用对话框中单击Go时,出现以下错误:
“当前项目无法使用此服务。请检查项目目标框架是否支持此服务类型。”
PCL目标如下:
.NET Framework 4.5
ASP.NET Core 1.0
Windows 8
Windows Phone 8.1
Xamarin.Android
Xamarin.iOS
Xamarin.iOS
我不知道如何让这个工作?
2)其次我使用的工作是使用SlSvcUtil.exe创建客户端 将生成的代码添加到我的PCL以及对System.ServiceModel的引用,一切都构建正常。问题是,当我运行代码时,它会标记类型引用错误!我是否应该手动添加对System.ServiceModel的引用?在这种情况下我做错了什么?我错过了一些步骤吗?
我查过了Xamarin文档,但似乎无法找到详细说明。
请帮帮我!感谢:)
答案 0 :(得分:0)
应支持PCL和WCF。或者,您可以使用HttpClient等手动工作。但也许如果您可以使用共享项目而不是PCL,那将更容易。否则,您还必须为每个平台使用DependencyService,创建接口等。