可以';t将复杂类型发送到WCF服务
本文关键字:WCF 服务 类型 复杂 可以 | 更新日期: 2023-09-27 18:29:56
我有一个在专用服务器上的IIS上运行的C#Web服务。有一种方法可以获取Session
对象(DataContract
),并在Windows客户端上对其进行测试和工作。然而,现在我正在开发一个"Xamarin.Mac"应用程序,我需要连接到服务器,但我遇到了一个特定的错误。
[DataContract]
public class Session{
[DataMember]
public string Email { get; set; }
[DataMember]
public string Password { get; set; }
[DataMember]
public string ComputerHash { get; set; }
[DataMember]
public string Ip { get; set; }
}
这是我要发送的Session
类。
[OperationContract]
bool Login ( Session session );
这就是我正在调用的方法。
但在调试时,我检查了Session
对象是否已填充,并且值是否已设置。但服务器获取Session
对象,但该对象的所有字段都设置为null。因此,它给了我一个无效的例外。
有趣的是,发送非复杂对象没有任何问题,但这些复杂类型让我头疼。
我在这里可能缺少什么?
这取决于您提出请求的方式。您需要将数据"发布"到服务器。数据需要在消息正文中定义,而不是作为请求url中的参数。