Content Negotiation
، مکانیزمی است که طی آن مصرف کننده یک سرویس http تعیین میکند که خروجی
مورد نظر از سرویس به چه فرمتی در اختیار آن قرار گیرد. این قابلیت بسیار
زیبا در Asp.Net Web Api فراهم میباشد. اما از آن جا که در WCF به صورت
توکار مکانیزمی جهت پیاده سازی این قابلیت در نظر گرفته نشده است میتوان
از طریق یک کتابخانه ثالث به نام WCFRestContrib به این مهم دست یافت.
...
خیلی وقتها لازم است تا نتیجه کوئری حاصله را بصورت Json به ویوی مورد نظر ارسال نمایید. برای اینکار کافیست مانند زیر عمل کنیم [HttpGet]
public JsonResult Get(int id)
{
return Json(repository.Find(id), JsonRequestBehavior.AllowGet);
}
اما اگر کوئری پیچیده و یا یک مدل سلسله مراتبی داشته باشید که با خودش کلید خارجی داشته باشد، هنگام تبدیل نتایج به خروجی Json، با خطای Circular References مواجه می ...
نکته : آشنایی با مفاهیم پایه WCF برای فهم بهتر مفاهیم توصیه میشود.
امروزه استفاده از WCF در پروژههای SOA بسیار فراگیر شده است. کمتر کسی
است که در مورد قدرت تکنولوژی WCF نشنیده باشد یا از این تکنولوژی در پروژههای خود استفاده نکرده باشد. WCF مدل برنامه نویسی یکپارچه مایکروسافت
برای ساخت نرمافزارهای سرویس گرا است و برای توسعه دهندگان امکانی را
فراهم میکند که راهکارهایی امن، و مبتنی بر تراکنش را تو ...
تشریح مسئله : در DataContractSerializer قابلیتی به عنوان سریالایز کردن objectها به صورت درختی وجود داردکه اصطلاحا به اون Circular References گفته میشود در این پست قصد دارم روش پیاده سازی، به همراه مزایای استفاده از این روش رو توضیح بدم. نکته : آشنایی با مفاهیم اولیه WCF برای درک بهتر مطالب الزامی است.
در ابتدا لازم است تا مدل برنامه را تعریف کنیم. ابتدا یک پروژه از نوع WCF Service Application ایجاد ...
تشریح مسئله : KnownTypeAttribute چیست و چگونه از آن استفاده کنیم؟پیش نیاز : آشنایی اولیه با مفاهیم WCF برای فهم بهتر مطالب
در ابتدا یک WCf Service Application ایجاد کنید و مدل زیر را بسازید: [DataContract]
public abstract class Person
{
[DataMember]
public int Code { get; set; }
[DataMember]
public string Name { get; set; }
}
یک کلاس ...