C# 如何将多个对象发送到WCF方法

C# 如何将多个对象发送到WCF方法,c#,asp.net,wcf,C#,Asp.net,Wcf,我有一个wcf服务,我正在发送一个列表,如下方法。 但我想发送两个参数,如下所示,方法意味着可以是一个列表,也可以是通过post方法在服务层中与实体相同的任何对象。 这可能吗 下面是我将对象数组发送到服务的过程。它运行良好 jquery代码: [WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle =

我有一个wcf服务,我正在发送一个列表,如下方法。 但我想发送两个参数,如下所示,方法意味着可以是一个列表,也可以是通过post方法在服务层中与实体相同的任何对象。 这可能吗

下面是我将对象数组发送到服务的过程。它运行良好

jquery代码:

    [WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json,
     ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
    public void SaveLabResults(List<MyEntity> myEntity)
    {
          var lstEntities=myEntity;
    }
[DataContract]
public class MyEntity
{
    [DataMember]
    public string TestId { get; set; }
    [DataMember]
    public string TestName { get; set; }
}

谢谢

当然可以,只需添加另一个参数

   [WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json,
     ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
    public void SaveLabResults(List<MyEntity> myEntity,List<MyEntity> myEntity2)
    {
          var lstEntities=myEntity;
          var lstEntities2=myEntity2;
    }

是的,可以发送多个参数,您只需在web方法和客户端上声明它们:

[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json,
 ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
public void SaveLabResults(List<MyEntity> myEntity, SomeObject secondParameter)
{
      var lstEntities=myEntity;
}
var dataToSend = '{"myEntity":'+jsonData+', "secondParameter":'+secondObject+'}';
服务器端和客户端的参数名称必须匹配

var dataToSend = '{"myEntity":'+jsonData+', "myEntity2":'+jsonData2+' }';
//Saving info
$.ajax({
    type: "POST",
    async: false,
    data: dataToSend,
    url: "../ServiceLayer/myService.svc/SaveResults",
    contentType: "application/json; charset=utf-8",
    dataType: "json",          
    success: function () {
        alert("success");
    },
    error: function () {
        alert("Error");
    }
});
[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json,
 ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
public void SaveLabResults(List<MyEntity> myEntity, SomeObject secondParameter)
{
      var lstEntities=myEntity;
}
var dataToSend = '{"myEntity":'+jsonData+', "secondParameter":'+secondObject+'}';