【问题标题】:Javascript send list to asmx serviceJavascript 将列表发送到 asmx 服务
【发布时间】:2015-05-03 23:02:19
【问题描述】:

我在 .net 网络表单中创建了一个 asmx 服务,如下所示。 AddUsers 方法接受 List 模型。

namespace ProjectName.AsmxServices.Test
 {

[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]

[ScriptService]
 public class Test: System.Web.Services.WebService
   {
    [WebMethod]
    public void AddUsers(List<UserDetail> userList)
    {
        // Add User List
    }

   // Here is my model
   public class UserDetail
    {
        public int Id{ get; set; }
        public string Name { get; set; }
        public string Surname{ get; set; }
        public DateTime BirthDate { get; set; }
    }
   }
 }

现在,我想用 JavaScript 发布 List 模型。但是如何在 javascript 中将此模型创建为列表?

         $("#addUsers").click(function () {

         var data = ??  **How can I create a List<UserDetail> model.**

         $.ajax({
            url: '../AsmxServices/Test.asmx/AddUsers',
            type: "POST",
            dataType: "json",
            contentType: "application/json; charset=utf-8",
            data: data
            success: function (result) {
                console.log("Good job!");
            },
            error: function (result) {
                console.log("Failed");
            }

        });
    });

我想现在硬编码创建这个模型列表。然后我将更改我的代码。

【问题讨论】:

    标签: javascript c# arrays asp.net-ajax asmx


    【解决方案1】:

    试试这个:

    var usersList = 
        {
            userList: 
                [
                    {Id: 1, Name: "name1"}, 
                    {Id: 2, Name: "name2"}
                ]
        };
    
    var data = JSON.stringify(usersList);
    

    【讨论】:

    • 谢谢 :) 成功了。我只是更改数据 (JSON.stringify(data))
    • 太棒了!我将其添加到答案中。
    猜你喜欢
    • 1970-01-01
    • 2012-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-27
    • 2012-03-06
    • 1970-01-01
    相关资源
    最近更新 更多