در قسمت قبلی بروز رسانی موجودیتهای منفصل با WCF را بررسی کردیم. در این قسمت خواهیم دید چگونه میتوان تغییرات موجودیتها را تشخیص داد و عملیات CRUD را روی یک Object Graph اجرا کرد. تشخیص تغییرات با Web API فرض کنید میخواهیم از سرویسهای Web API برای انجام عملیات CRUD استفاده کنیم، اما بدون آنکه برای هر موجودیت متدهایی مجزا تعریف کنیم. به بیان دیگر میخواهیم عملیات مذکور را روی یک Object Graph انجام دهیم. مدیریت دادهها هم با مدل C ...
در قسمت قبل معماری اپلیکیشنهای N-Tier و بروز رسانی موجودیتهای منفصل توسط Web API را بررسی کردیم. در این قسمت بروز رسانی موجودیتهای منفصل توسط WCF را بررسی میکنیم. بروز رسانی موجودیتهای منفصل توسط WCF سناریویی را در نظر بگیرید که در آن عملیات CRUD توسط WCF پیاده سازی شده اند و دسترسی دادهها با مدل Code-First انجام میشود. فرض کنید مدل اپلیکیشن مانند تصویر زیر است. همانطور که میبینید مدل ما متشکل از پستها و نظرات کار ...
تمام اپلیکیشنها را نمیتوان در یک پروسس بسته بندی کرد، بدین معنا که تمام اپلیکیشن روی یک سرور فیزیکی قرار گیرد. در عصر حاظر معماری بسیاری از اپلیکیشنها چند لایه است و هر لایه روی سرور مجزایی توزیع میشود. بعنوان مثال یک معماری کلاسیک شامل سه لایه نمایش (presentation)، اپلیکیشن (application) و داده (data) است. لایه بندی منطقی (logical layering) یک اپلیکیشن میتواند در یک App Domain واحد پیاده سازی شده و روی یک کامپیوتر میزبانی شود. در این ...
وقتی یک Web API میسازید بهتر است صفحات راهنمایی هم برای آن در نظر بگیرید، تا توسعه دهندگان بدانند چگونه باید سرویس شما را فراخوانی و استفاده کنند. گرچه میتوانید مستندات را بصورت دستی ایجاد کنید، اما بهتر است تا جایی که ممکن است آنها را بصورت خودکار تولید نمایید.
بدین منظور فریم ورک ASP.NET Web API کتابخانه ای برای تولید خودکار صفحات راهنما در زمان اجرا (run-time) فراهم کرده است. ایجاد صفحات راهنمای API برای ش ...
گرچه ASP.NET Web API بهمراه ASP.NET MVC بسته بندی شده و استفاده میشود، اما اضافه کردن آن به اپلیکیشنهای ASP.NET Web Forms کار ساده ای است. در این مقاله مراحل لازم را بررسی میکنیم.
برای استفاده از Web API در یک اپلیکیشن ASP.NET Web Forms دو قدم اصلی باید برداشته شود: اضافه کردن یک کنترلر Web API که از کلاس ApiController مشتق میشود. اضافه کردن مسیرهای جدید به متد Application_Start . یک پروژه Web Forms بساز ...
در این مقاله با استفاده از ASP.NET Web API یک سرویس HTTP خواهیم ساخت که از عملیات CRUD پشتیبانی میکند. CRUD مخفف Create, Read, Update, Delete است که عملیات پایه دیتابیسی هستند. بسیاری از سرویسهای HTTP این عملیات را بصورت REST API هم مدل سازی میکنند. در مثال جاری سرویس ساده ای خواهیم ساخت که مدیریت لیستی از محصولات (Products) را ممکن میسازد. هر محصول شامل فیلدهای شناسه (ID)، نام، قیمت و طبقه بندی خواهد بود.
سرویس ما ...
در قسمت قبلی این مقاله گفتیم که دو خاصیت از LocalDb هنگام استفاده از Full IIS باعث بروز خطا میشوند: LocalDb نیاز دارد که پروفایل کاربر بارگذاری شده باشد بصورت پیش فرض وهله LocalDb متعلق به یک کاربر بوده، و خصوصی است در قسمت قبل دیدیم چگونه باید پروفایل کاربر را بدرستی بارگذاری کنیم. در این مقاله به مالکیت وهلهها (instance ownership) میپردازیم. مشکل وهله خصوصی در پایان قسمت قبلی، اپلیکیشن وب را در این حالت رها کر ...
این مقاله قسمت اول یک سری دو قسمتی است، که در آن به نحوه استفاده از LocalDB در IIS میپردازیم.
LocalDb دیتابیس توصیه شده برای ویژوال استودیو است و برای انواع پروژهها مانند اپلیکیشنهای وب میتواند استفاده شود. هنگام استفاده از این دیتابیس در IIS Express یا Cassini همه چیز طبق انتظار کار میکند. اما به محض آنکه بخواهید از آن در Full IIS استفاده کنید با خطاهایی مواجه میشوید. مقصود از Full IIS همان نسخه ای است ...
HTTP تنها برای به خدمت گرفتن صفحات وب نیست. این پروتکل همچنین پلتفرمی قدرتمند برای ساختن API هایی است که سرویسها و داده را در دسترس قرار میدهند. این پروتکل ساده، انعطاف پذیر و در همه جا حاضر است. هر پلتفرمی که فکرش را بتوانید بکنید کتابخانه ای برای HTTP دارد، بنابراین سرویسهای HTTP میتوانند بازه بسیار گسترده ای از کلاینتها را پوشش دهند، مانند مرورگرها، دستگاههای موبایل و اپلیکیشنهای مرسوم دسکتاپ.
ASP.NET Web API فری ...
Routing مکانیزم مسیریابی ASP.NET MVC است، که یک URI را به یک اکشن متد نگاشت میکند. MVC 5 نوع جدیدی از مسیر یابی را پشتیبانی میکند که Attribute Routing یا مسیریابی نشانه ای نام دارد. همانطور که از نامش پیداست، مسیریابی نشانه ای از Attributeها برای این امر استفاده میکند. این روش به شما کنترل بیشتری روی URIهای اپلیکیشن تان میدهد.
مدل قبلی مسیریابی (conventional-routing) هنوز کاملا پشتیبانی میشود. در واقع میتوانید هر دو تکنیک را بعنوا ...