My ASP.NET Application

togg
DM

Definisjon av klasser brukt for JSON-kall


public class PRODUCT_GROUP
{
    public string name;
    public List<PRODUCT> productlist;
}

public class PRODUCTT_GROUP_DETAILS
{
    public string name;
    public List<PRODUCT_DETAIL_OBJECT> productlist;
}


public class PRODUCT
{
    public string id;
    public string article_nr;
    public string name;
    public string product_category_code;
    public string product_category_name;
}

public class PRODUCT_DETAIL_OBJECT:PRODUCT
{
    public string imageurl;
    public string producturl;
    public string subtitle;
}

Test av JSON-kall

            
            function test_GET_PRODUCT_INDEX() {
                $("div.jsondata").empty();
                $("<p>Working...</p>").appendTo("div.jsondata");
                $.ajax({
                    type: "POST",
                    contentType: "application/json",
                    url: "GET_PRODUCT_INDEX.ashx",
                    data: "{}",
                    dataType: "json",
                    success: function (data) {
                        var items = [];
                        alert(data);
                        items.push("<tr><th>id</th><th>article_nr</th><th>name</th><th>product_category_name</th></tr>");
                        $.each(data, function (key, val) {
                            items.push("<tr id='" + key + "'><td>Varegruppe" +
                         "</td><td>" +
                         "</td><td>" + data[key].name +
                         "</td><td></td></tr>");

                            var productlist = data[key].productlist;
                            $.each(productlist, function (key2, val2) {
                                items.push("<tr id='" + key2 + "'><td>" + productlist[key2].id +
                         "</td><td>" + productlist[key2].article_nr +
                         "</td><td>" + productlist[key2].name +
                         "</td><td>" + productlist[key2].product_category_name + "</td></tr>");

                            });

                        });
                        $("div.jsondata").empty();

                        $("<table/>", {
                            "class": "my-new-list",
                            html: items.join("")
                        }).appendTo("div.jsondata");
                        $("</pre>").appendTo("div.jsondata");
                    }
                });
            }


            function test_GET_PRODUCT_DETAILS() {
                $("div.jsondata").empty();
                $.ajax({
                    type: "POST",
                    contentType: "application/json",
                    url: "GET_PRODUCT_DETAILS.ashx",
                    data: '["0200101","0200102","0200103","0200121","0200122","0200123","0200128"]',
                    dataType: "json",
                    success: function (data2) {
                        var items = [];
                        items.push("<tr><th>id</th><th>producturl</th><th>imageurl</th><th>article_nr</th><th>name</th><th>product_category_name </th></tr>");

                        $.each(data2, function (key, val) {
                            items.push("<tr id='" + key + "'><td colspan='6'>" + data2[key].name + "</td></tr>");

                            var productlist = data2[key].productlist;
                            $.each(productlist, function (key2, val2) {
                                items.push("<tr id='" + key2 + "'><td>" + productlist[key2].id +
                            "</td><td>" + productlist[key2].producturl +
                            "</td><td>" + productlist[key2].imageurl +
                            "</td><td>" + productlist[key2].article_nr +
                            "</td><td>" + productlist[key2].name +
                            "</td><td>" + productlist[key2].product_category_name + "</td></tr>");
                            });
                        });

                        $("<table/>", {
                            "class": "my-new-list",
                            html: items.join("")
                        }).appendTo("div.jsondata");
                    }
                });
            }


            function test_GET_SEARCH(searcstr) {
                $("div.jsondata").empty();
                $.ajax({
                    type: "POST",
                    contentType: "application/json",
                    url: "GET_SEARCH.ashx?s=" + searcstr,
                    data: '["0200101","0200102","0200103","0200121","0200122","0200123","0200128"]',
                    dataType: "json",
                    success: function (data2) {
                        var items = [];
                        items.push("<tr><th>id</th><th>producturl</th><th>imageurl</th><th>article_nr</th><th>name</th><th>product_category_name </th></tr>");
                        $.each(data2, function (key, val) {
                            items.push("<tr id='" + key + "'><td colspan='6'>" + data2[key].name + "</td></tr>");
                            var productlist = data2[key].productlist;
                            $.each(productlist, function (key2, val2) {
                                items.push("<tr id='" + key2 + "'><td>" + productlist[key2].id +
                            "</td><td>" + productlist[key2].producturl +
                            "</td><td>" + productlist[key2].imageurl +
                            "</td><td>" + productlist[key2].article_nr +
                            "</td><td>" + productlist[key2].name +
                            "</td><td>" + productlist[key2].product_category_name + "</td></tr>");

                            });
                        });

                        $("<table/>", {
                            "class": "my-new-list",
                            html: items.join("")
                        }).appendTo("div.jsondata");
                    }
                });
            }