نظرات مطالب
نظرات مطالب
ASP.NET Web API - قسمت اول
سلام
یک سوال مهم داشتم، آیا استفاده از web api در Windows Form مانند WCF ممکن است، یعنی پروژه ما هم هاست و هم کلاینت رو MVC یا ASP.Net نیست، اگه میشه یه منبع معرفی کنید.
نظرات مطالب
ASP.NET Web API - قسمت چهارم
شما در سوالتون میتونید عبارت "ASP.NET Web API" رو با "Web Service تحت HTTP" جایگزین کنید. در Web Service هم منطق سیستم وجود داره، مثلاً محاسبهی نرخ تورم در یک بازهی زمانی با توجه به 30 قلم کالای اساسی. عملکرد Web API، همان عملکردی است که از یک Web Service تحت HTTP مانند ASMX انتظار دارید.
نظرات مطالب
شروع کار با ASP.NET Web API 2
- برای مثال آن مراجعه کنید به ویکی همان پروژه.
- خیر. نیاز به طراحی مجدد دارد.
- گروه Web API سایت قدم به قدم هست. از قسمت اول آن شروع به مطالعه کنید.
بازخوردهای دوره
تزریق خودکار وابستگیها در برنامههای ASP.NET MVC
یک نکتهی تکمیلی در مورد Web API
Mark Seemann توصیه کردهاست که از IDependencyResolver استفاده نکنید. روش دیگری برای کار با Web API مورد تائید ایشان است:
Dependency Injection and Lifetime Management with ASP.NET Web API
Dependency Injection in ASP.NET Web API with Castle Windsor
پیاده سازی این نکته با StructureMap در اینجا:
Better way to configure StructureMap in ASP.NET WebAPI
Mark Seemann توصیه کردهاست که از IDependencyResolver استفاده نکنید. روش دیگری برای کار با Web API مورد تائید ایشان است:
Dependency Injection and Lifetime Management with ASP.NET Web API
Dependency Injection in ASP.NET Web API with Castle Windsor
پیاده سازی این نکته با StructureMap در اینجا:
Better way to configure StructureMap in ASP.NET WebAPI
هدف اصلی بنده ساخت یک قالب آماده بر اساس مقالاتی که تا الان در سایت جاری مطالعه کردم و با امکان سطح دسترسی داینامیک، بود.همانطور که در مقاله مربوط به چک لیست تهیه یک برنامه Asp.net MVC ، در نکات تکمیلی پیشنهاد شد:
" تهیه قالبهای سفارشی VS.NET و لحاظ موارد فوق در آن جهت استفادههای بعدی نیز وجود دارد"
کاربر سیستمی
نام کاربری :SystemAdmin
کلمه عبور: Admin1234@gmail.com
راه اندازی پروژه
از این مقاله کمک بگیرید و ورژن جدید را از مخزن پروژه دانلود کنید
موارد اضافه شده در ورژن آخر
- بهبود سیستم فیلترینگ و مرتب سازی لیست کاربران
- استفاده از noty به جای toastr
- یکپارچه شده با Asp.net Web Api
- یکپارچه شده با Asp.net SignalR
نظرات مطالب
استفاده از Web API در ASP.NET Web Forms
مفاهیم اعتبارسنجی در MVC با Web Api تقریبا یکی است.
نظرات مطالب
بررسی تغییرات ASP.NET MVC 5 beta1
- نکات مهم Bootstrap رو ما در سایت جاری بررسی کردیم و الزاما برای استفاده از آن نیازی به MVC5 نیست. همین الان در MVC4 هم میتونید ازش استفاده کنید. ولی درکل هر وقت مایکروسافت دست روی چیزی میگذارد، مزیتش تهیه حداقل 20 جلد کتاب جدید در مورد CSS و Bootstrap و طراحی است که در نهایت برای دنیای وب، از لحاظ بالا رفتن کیفیت کارهای انجام شده، بسیار مفید خواهد بود.
- در کل این به روز رسانی برای مدیریت و دریافت تغییرات انجام شده اخیر بسیار مناسب خواهد بود (تمام اجزای MVC مانند اسکریپتهای اعتبارسنجی سازگار با نسخه جدید jQuery، فشرده سازهای CSS و JS، قسمتهای مرتبط با SignalR و Web API همین Owin ایی که نامبردید، مرتبا به روز میشوند). حداقل دیگر نیازی به دریافت چند گیگ به روز رسانی VS 2012 نیست و به یکباره میشود تمام آنها را در VS 2013 داشت.
- همچنین با توجه به سورس باز بودن MVC، دنبال کردن History سورس کنترل آنها در جهت مشاهده تغییرات انجام شده ضروری است. یعنی صرفا نباید در منوها یا صفحه دیالوگهای جدید به دنبال تغییرات بود. اگر تغییرات سورس کنترل را بررسی کنید مواردی مانند MVC Attribute Routing، رفع تعدادی از باگهای Razor parser و تغییرات گستردهای در Web API انجام شده (بیشتر موارد مرتبط به Web API است).
- در کل این به روز رسانی برای مدیریت و دریافت تغییرات انجام شده اخیر بسیار مناسب خواهد بود (تمام اجزای MVC مانند اسکریپتهای اعتبارسنجی سازگار با نسخه جدید jQuery، فشرده سازهای CSS و JS، قسمتهای مرتبط با SignalR و Web API همین Owin ایی که نامبردید، مرتبا به روز میشوند). حداقل دیگر نیازی به دریافت چند گیگ به روز رسانی VS 2012 نیست و به یکباره میشود تمام آنها را در VS 2013 داشت.
- همچنین با توجه به سورس باز بودن MVC، دنبال کردن History سورس کنترل آنها در جهت مشاهده تغییرات انجام شده ضروری است. یعنی صرفا نباید در منوها یا صفحه دیالوگهای جدید به دنبال تغییرات بود. اگر تغییرات سورس کنترل را بررسی کنید مواردی مانند MVC Attribute Routing، رفع تعدادی از باگهای Razor parser و تغییرات گستردهای در Web API انجام شده (بیشتر موارد مرتبط به Web API است).
اگر هدف ارائه دادن نکات مهم باشد که موارد زیادی را میتوان گنجاند. مثل گرفتن Cancellation token درخواست جاری به عنوان ورودی action و پاس دادن آن به متدهای http client تا در صورتی که درخواست اصلی منتفی شد، الکی http client کلی کار اضافه انجام نده و ضمن کنسل شدن کار، از ادامه کار سرور مقصد http client هم جلوگیری بشه. اما اگر هدف ارائه دادن مهمترین نکات نبوده بلکه تمرکز بر روی قطعه کد جاری و اصل این مطلب است نیز دو مهم وجود دارد:
۱- چرا بعد از await دوم در asp.net، مقدار System.Web.HttpContext.Current نال است، در صورتی که بدون ConfigureAwait این اتفاق نمیافتد؟
۲- آیا بنچمارک ای دارید که نشان دهد عملکرد این کد در asp.net core با و بدون configure await تفاوت میکند؟
اساسا جای configure await اگر هم قصد آموزش اش وجود داشته باشد، در mvc/web api actions & middlewares نیست، چون در بهترین حالت تفاوتی نمیکند و در بدترین حالت ایجاد مشکل میکند. در واقع وقتی کد در web api actions نوشته میشود، دیگر چند سکویی و ... معنی نمیدهد، بلکه مشخصا مثلا داریم برای asp.net core 2 mvc کد میزنیم. توصیه شده در جاهای دیگر مانند serviceها و repositoryها در صورتی که معلوم نباشد کجا قرار است استفاده شوند، مثلا asp.net باشد یا wpf، بد نیست configure await استفاده شود که اولا این کم رخ میدهد و دوما حتما باز باید در Web API/MVC action موقع فراخوانی آن متد Async از ConfigureAwait استفاده نشود. به همین علت فراخوانی Configure Await در اکثر پروژههای نرم افزاری عملا به دست فراموشی سپرده شده و در سطح فریمورکهای مطرح مانند ASP.NET Core هم دیگر استفاده نمیشود.
با توجه به این که عموما استفاده از ConfigureAwait به شکل صحیح Use caseهای کمی دارد، این قسمت از کد بیشتر مشکل زا و گمراه کننده میدانم تا مفید و آموزنده.
سپاس