我正在创建WCF Web服务,应由仅使用URL的应用程序使用(例如http://localhost:8000/TestMethod?s=testString
)。
我已经成功托管了这个Web服务,它运行良好等等。但是现在,我只传递简单的值。
例如,有下一个例子
[DataContract]
public struct Person
{
[DataMember]
public string FirstName;
[DataMember]
public string LastName;
}
//in service interface
[OperationContract]
[WebInvoke]
void RegisterUser(Person newUser);
如何使用网址拨打RegisterUser
?结构参数如何看?或者我应该简单地将数据类型分解为简单变量并将它们作为参数传递?
答案 0 :(得分:1)
将Uri模板设置为方法,以便服务识别要执行的方法并理解通过URL传递的数据。
查看文档
https://msdn.microsoft.com/en-us/library/system.servicemodel.web.webinvokeattribute(v=vs.110).aspx
用于传递复杂类型传递json字符串(更喜欢post而不是get)和用户序列化器将字符串反序列化为person对象。
或考虑不同的requestType https://msdn.microsoft.com/en-us/library/system.servicemodel.web.webinvokeattribute.requestformat(v=vs.110).aspx