استفاده از WCF Data Services در برنامه های وب به کمک JQuery
نویسنده: مجتبی کاویانی
تاریخ: ۱۳۹۱/۱۱/۰۵ ۱۷:۳۵
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
خروجی پیش فرش وب سرویس WCF Data Services ساختار Xml دارد پس میبایست وب سرویس را متوجه سازیم که ما با خروجی Json نیاز داریم. از نسخه 5 به بعد اگر MaxProtocolVersion را بر روی V3 قرار دهیم دیگر با Accept Header برابر application/json کار نخواهد کرد و میبایست از application/json;odata=verbose استفاده نمود یا نسخه پروتکل را بر روی V2 یا پایینتر تنطیم کنید. علاوه بر آن کتابخانههای و قطعه کدهای تهیه شده است که با پارامتر format$ این کار را برای ما انجام میدهد در زیر آدرس دو نمونه آورده شده است.
[JSONPSupportBehavior] public class Northwind : DataService<NorthwindEntities>
http://localhost:8358/Northwind.svc/Products?$format=json
public class Northwind : ODataService<NorthwindEntities>
$.getJSON("Northwind.svc/Products?$format=json", function (data) {
$.each(data.d, function (i, item) {
$("<p/>").html(item.Product_Name + " " + item.Unit_Price).appendTo("#products");
});
});
$.ajax('Northwind.svc/Products', {
dataType: "json",
beforeSend: function (xhr) {
xhr.setRequestHeader("Accept", "application/json;odata=verbose");
xhr.setRequestHeader("MaxDataServiceVersion", "3.0");
},
success: function (data) {
$.each(data.d, function (i, item) {
$("<p/>").html(item.Product_Name + " " + item.Unit_Price).appendTo("#products");
});
}
});