# برنامه نویسی با محصولات مایکروسافت > برنامه نویسی مبتنی بر Microsoft .Net Framework > ASP.NET MVC > سوال: فرق ASP.NET Core    و  ASP.NET MVC

## armm1388

با سلام
فرق ASP.NET Core    و  ASP.NET MVC  چیست؟ اگر بخواهم یکی را انتخاب کنم و پروژه هایم را بر آن مبنا بنویسم کدام بهتر است؟
با سپاس فراوان

----------


## مهدی کرامتی

تفاوت عمده این دو در این هاست:
در ASP.NET Core اکثر کارها بر اساس Middleware ها انجام می شود.در ASP.NET Core اکثر کارهابا استفاده از تزریق وابستگی انجام می شود.بجای HTML Helper ها از Tag Helper ها استفاده می شود و با توجه به اعمال شدن آنها به تگ های عادی HTML، کار با داکیومنت های HTML بسیار ساده تر می شود.

اگر بخواهید یکی را انتخاب کنید بالطبع ASP.NET Core از هر لحاظ ارجعیت دارد، منتهی شروع به کار با آن بدون آشنایی کامل با ASP.NET MVC تقریبا غیرممکن است.

----------


## firebox

بزرگترین تفاوت شون این هست که ASP.NET Core متن باز هست و کراس پلتفرم ، میتونید روی مک ، ویندوز و لینوکس وب اپ بسازید.
ASP.NET MVC توسعه اش متوقف شده با ASP.NET Core جایگزین شده.

----------


## مهدی کرامتی

> بزرگترین تفاوت شون این هست که ASP.NET Core متن باز هست و کراس پلتفرم ، میتونید روی مک ، ویندوز و لینوکس وب اپ بسازید.


این تفاوت محسوب نمی شود.
اولا ASP.NET MVC هم اوپن سورس است، ثانیا از طریق پکیج های Mono، امکان اجرای ASP.NET MVC هم روی سیستم عامل های فوق وجود دارد.

----------


## firebox

> این تفاوت محسوب نمی شود.
> اولا ASP.NET MVC هم اوپن سورس است، ثانیا از طریق پکیج های Mono، امکان اجرای ASP.NET MVC هم روی سیستم عامل های فوق وجود دارد.


هدف اصلی توسعه Net Core. توسط مایکروسافت پشتیبانی از مولتی پلتفرم ، بهبود کارایی و native compilation بود ، 
پروژه Mono رو  اصلا مایکروسافت پشتیبانی نمی کرد (یک شرکت دیگه بود که خود مایکروسافت چند سال پیش خریدش) ، کارایی اش رو با هم مقایسه کنی ، مثل شب و روز می مونه.

----------


## مهدی کرامتی

> هدف اصلی توسعه Net Core. توسط مایکروسافت پشتیبانی از مولتی پلتفرم ، بهبود کارایی و native compilation بود ، 
> پروژه Mono رو  اصلا مایکروسافت پشتیبانی نمی کرد (یک شرکت دیگه بود که خود مایکروسافت چند سال پیش خریدش) ، کارایی اش رو با هم مقایسه کنی ، مثل شب و روز می مونه.


در مورد مواردی که نقل کردم و نوشتی حرفی نیست، گفتم اینکه میشه مالتی پلت فرم اجراش کرد تفاوت محسوب نمیشه، چون تو ASP.NET MVC هم میسر بود.
حتی خود دات نت کور هم ابتدا با کمک مونو در سیستم عامل های غیر از ویندوز اجرا می شد، الان نمی دونم هنوز اون طور هست یا نه (در مورد اینکه مونو از کجا اومد بحثی نیست).

----------


## aaaaaaaaaaa

بس جناب کرامتی به نظر شما لازمه .net core یادگیریه کامل mvc چون خیلی زمانبره 

کامل باید یاد بگیرم

----------


## مهدی کرامتی

> بس جناب کرامتی به نظر شما لازمه .net core یادگیریه کامل mvc چون خیلی زمانبره 
> کامل باید یاد بگیرم


اگر قشنگ بنشینی پای مطالعه و یادگیری، 1 ماه تا 2 ماه زمان می بره. منتهی بدون دونستن مفاهیم MVC تو ASP.NET Core چپ و راست میری تو دیوار.

----------

