将多个 Merged Json 对象发送到 web 服务,然后单独使用它们

Sending multiple Merged Json Object to webservice and then consume them individually

大家早上好! 我的问题很简单,我需要一些即时解决方案。在客户端,Side 正在创建三个不同的 Json(obj1,obj2,obj3) 对象,我需要使用 Web 服务将其发送到后端 C#。据我所知,我们只能将一个对象发送到 Web 服务,因此我将所有三个独立的 JSON 对象合并到另一个对象中,显示在 FinalObject 下方。现在在发送 ajax 请求后,有人可以告诉我谁可以将这三个对象作为单独的对象(如 Obj1、obj2、obj3)获取。在后端,我为这三个对象设置了三个不同的 类 属性集。我正在接收作为 Object obj 的对象调用。谢谢大家。

 Obj1 = {
            'AlertName': inputs["Alert_Name"].value,
            'Send_to_Admin': ($('#fullAdminUsers').is(':checked') == true?"Yes":"No"),
            'Send_to_Employee': ($('#employee').is(':checked') == true ? "Yes" : "No"),
            'Send_to_Manager': ($('#manager').is(':checked') == true ? "Yes" : "No"),
            'Send_to_Others': ($('#otherSendTo').is(':checked') == true ? "Yes" : "No"),
            'EmailSubject': inputs['EmailSubject'].value,
            'CustomMessage': inputs['CustomMessage'].value,
            
        }
    Obj2 = {
             "EmployeeId": id,
             "Employee_Name": emp_name,
             "Alert_Group_Id": Is_allEmployees
        }
    Obj3 = {
            newObject[key]["EventScope"] = EventScope;
            newObject[key]["EventName"] = EventName;
            newObject[key]["Eventtype"] = Eventtype;
        }
     FinalObject = {
            'AlertData': Obj1,
            'AlertGroup': Obj2,
            'ERemainder': Obj3
        }

你可以试试。只需将这个daha转换为JObject,就可以实现像data["AlertData"]这样的嵌套对象。然后随便投。

var obj1 = new { key1 = "value1" };
        var obj2 = new { key2 = "value2" };
        var obj3 = new { key1 = "value3" };

        var finalObj = new { AlertData = obj1, AlertGroup = obj2, ERemainder = obj3 };

        var jsonData = JsonConvert.SerializeObject(finalObj);

        var jData = (JObject)JsonConvert.DeserializeObject(jsonData.ToString());

        var alertData = (dynamic)jData["AlertData"];

我用动态是因为我不知道你想要什么。您可以使用真实类型而不是动态类型。在这种情况下,您可以达到 alertData.key 这样的值。