کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

آموزش MVC Core-اجرای MVC Core از طریق مونو

آموزش MVC Core-اجرای MVC Core از طریق مونو

معرفی

در این مقاله، شما نحوه اجرای پروژه ASP.NET Core 2.0 خود را از طریق مونو یاد خواهید گرفت.
اکثر اوقات ما از .NET Core CLI برای اجرای ASP.NET Core web application استفاده می کنیم ، مانند dotnet run و dotnet xxx.dll .
اما، Mono می تواند ASP.NET Core web application را به خوبی اجرا کند! گام به گام به شما نشان خواهم داد.
شروع کنیم!

مرحله 1

یک ASP.NET Core Web application به نام MonoDemo ایجاد کنید:


آموزش MVC Core

مرحله 2


آموزش MVC Core

default target را از .NET Core به NET Framework تغییر بدهید.

توجه داشته باشید

اگر شما تعجب کردید که چرا ما در اینجا NET Framework انتخاب کردیم شما باید درباره مفاهیمی مانند(NET Core ، ASP.NET Core ، NET Framework و غیره) بیشتر بدانید.

مرحله 3

برای اینکه این برنامه بتواند در OSX anLinux اجرا شود، ما باید MonoDemo.csproj را ویرایش کنیم.


آموزش MVC Core

در اینجا MonoDemo.csproj بعد از ویرایش است.

< Project Sdk="Microsoft.NET.Sdk.Web" >  
  
  < PropertyGroup >  
    < TargetFramework >net461< /TargetFramework >  
    < RuntimeIdentifiers >osx-x64;linux-x64< /RuntimeIdentifiers >  
  < /PropertyGroup >  
  
  < ItemGroup >  
    < PackageReference Include="Microsoft.AspNetCore" Version="2.0.0" / >  
    < PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.0.0" / >  
    < PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.ViewCompilation" Version="2.0.0" PrivateAssets="All" / >  
    < PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="2.0.0" / >  
    < PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink" Version="2.0.0" / >  
  < /ItemGroup >  
  
  < ItemGroup >  
    < DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.0" / >  
  < /ItemGroup >  
< /Project >  

مرحله 4

این برنامه وب را با استفاده از NET Core CLI command منتشر کنید.اگر هدف شما OSX باشد، می توانید از دستور زیر استفاده کنید.

dotnet publish -r osx-x64 -c Release -f net461  

اگر هدف شما لینوکس باشد، می توانید از دستور زیر استفاده کنید.

dotnet publish -r linux-x64 -c Release -f net461  

آموزش MVC Core

در اینجا، از OSX برای مثال استفاده می کنم. و این شبیه همان لینوکس است. تنها تفاوت بین آنها از فایل های libuv است. هر سیستم عامل نوع خاصی دارد.


آموزش MVC Core

مرحله 5

تمام فایل های موجود در پوشه Publish بر روی کامپیوتر MAC یا Linux کپی کنید. قبل از مراحل زیر، ابتدا باید مونو را نصب کنید.اگر هنوز نصب نکرده اید می توانید از لینک زیر استفاده کنید:

http://www.mono-project.com/download/

مرحله 6

بیایید آن را از طریق مونو اجرا کنیم.

mono MonoDemo.exe  

آموزش MVC Core

متاسفانه، پس از اجرای دستور فوق، برخی از خطاهای ترمینال را می بینیم. ما باید یک DLL با نام System.Runtime.InteropServices.RuntimeInformation.dll را از پوشه Publish حذف کنیم.
پس از از بین بردن، برنامه به خوبی اجرا می شود.


آموزش MVC Core

مرحله 7

مرورگر خود را باز کرده و آدرس http: // localhost: 5000 را وارد کنید. شما متوجه خواهید شد که همه چیز خوب است.


آموزش MVC Core

ما می توانیم از دستور lsof برای پیدا کردن کسی که در حال گوش دادن به پورت 5000 است استفاده کنیم.

lsof -i :5000

آموزش MVC Core

برای مقایسه، من یک ASP.NET Core web application جدید را از طریق .NET Core CLI اجرا می کنم.


آموزش MVC Core

در نهایت، به لینوکس بروید و این برنامه را نیز اجرا کنید. در اینجا، من از CentOS برای مثال استفاده می کنم.


آموزش MVC Core

همانطور که می بینید، هر دو OSX و لینوکس یکسان هستند و از طریق Mono به راحتی اجرا می شوند.

در زیر یک نمونه فایل service برای برنامه ما است:

# Code removed for brevity.  
  
[Service]  
WorkingDirectory=/var/www/monodemo  
ExecStart=/usr/bin/mono /var/www/momodemo/MonoDemo.exe  
 
# Code removed for brevity.  

خلاصه

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

1397/03/09 2556 968
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...