<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های پیمان نصرتی</title>
        <link>https://virgool.io/feed/@paymannosraty</link>
        <description>برنامه‌نویس و توسعه دهنده وب - Asp .Net &amp; Blazor wasm</description>
        <language>fa</language>
        <pubDate>2026-06-10 14:06:21</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/83808/avatar/e3WCMO.jpeg?height=120&amp;width=120</url>
            <title>پیمان نصرتی</title>
            <link>https://virgool.io/@paymannosraty</link>
        </image>

                    <item>
                <title>باز نشدن برنامه های TaskBar در Windows 11 هنگام استفاده از Visual Studio 2022</title>
                <link>https://virgool.io/@paymannosraty/%D8%A8%D8%A7%D8%B2-%D9%86%D8%B4%D8%AF%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7%DB%8C-taskbar-%D8%AF%D8%B1-windows-11-%D9%87%D9%86%DA%AF%D8%A7%D9%85-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-visual-studio-2022-ovaaf5ayojy1</link>
                <description>بعد از Upgrade به ویندوز 11، مشکلی حین استفاده از Visual Studio پیش میاد، که پیدا کردن راه حل برای من خیلی طول کشید، از این جهت تصمیم گرفتم تا این راه حل رو با شما دوستان به اشتراک بذارم.کافیه تنظیمات زیر رو توی محیط VS انجام بدین و مشکل برطرف میشه1. Visual studio رو باز کنید2. در زبانه Tools آیتم Options رو انتخاب کنید3. میتونید از دسته Debugging آیتم General رو انتخاب کنید یا اینکه کلمه Diagnostic رو جستجو کنید.4. تیک قابلیت Enable Diagnostic Tools while debugging که به صورت پیش فرض فعال هست رو بردارین تا این قابلیت غیر فعال بشه.5. ویژوال استودیو رو ببندین و مجدد باز کنین.تیک رو بردارین</description>
                <category>پیمان نصرتی</category>
                <author>پیمان نصرتی</author>
                <pubDate>Tue, 26 Apr 2022 13:46:58 +0430</pubDate>
            </item>
                    <item>
                <title>استقرار پروژه Asp .Net 5 در Ubuntu Server 20.04 - قسمت سوم</title>
                <link>https://virgool.io/@paymannosraty/%D8%A7%D8%B3%D8%AA%D9%82%D8%B1%D8%A7%D8%B1-%D9%BE%D8%B1%D9%88%DA%98%D9%87-asp-net-5-%D8%AF%D8%B1-ubuntu-server-2004-%D9%82%D8%B3%D9%85%D8%AA-%D8%B3%D9%88%D9%85-ol0jcwalzobm</link>
                <description>Asp .Net Core on Ubuntu server 20.04قسمت سوم - Publish و استقرار پروژه Asp .Net 5 روی Ubuntu:با سلام، من در این مقاله قصد دارم تا بعد از نصب Ubuntu server 20.04 به صورت ماشین مجازی در Virtual Box 6.1.18 پروژه‌ی Asp .net 5 خودم رو روی Ubuntu قرار بدم. امیدوارم که مطالب برای شما مفید باشه.نکته این‌که اگر شما پروژه‌ای با Net Core 3.1 به بالا دارید هم به همین طریق می‌تونید روش استقرار به همین شکله.من برای Publish پروژه Web API که با Net 5 نوشته شده رو دارم٬ و اون رو به صورت فولدر پابلیش می‌کنم.در ابتدا قبل از Publish نیاز هست که تغییرات زیر رو در Startup پروژه اعمال کنیم:using Microsoft.AspNetCore.HttpOverrides;سپس در متد Configure کد زیر رو اضافه می‌کنیم:app.UseForwardedHeaders( new ForwardedHeadersOptions
{
  ForwardedHeaders = ForwardedHeaders.XForwardedFor | 
  ForwardedHeaders.XForwardedProto
});
app.UseAuthentication();برای Publish پروژه روی پروژه وب کلیک راست٬ می‌کنیم و Publish را می‌زنیم(دقت کنید که روی Solution کلیک نمی‌کنیم٬ روی Project کلیک می‌کنیم):گزینه Folder را انتخاب و Next را می‌زنیم٬ محل Publish را مشخص می‌کنیم و Finish را می‌زنیم و در نهایت با زدن Publish پروژه در محل مورد نظر Publish می‌شه:بعد از Publish پروژه باید فایل های Publish شده رو به Ubuntu Server منتقل کنیم٬ من برای این کار از FileZilla استفاده کردم که از این لینک می‌تونین دانلود کنین.بعد از نصب FileZilla از طریق SSH می‌تونیم به ماشین مجازی Ubuntu که در قسمت‌های قبل ساختیم وصل شیم.در قسمت Quick Connect اطلاعات رو وارد و Quick Connect رو می‌زنیم٬ (پورت SSH به صورت پیش‌فرض 22 هستش).سمت چپ هارد ماشین و سمت چپ فایل home ماشین مجازی رو می‌بینیم:روی پوشه ی ماشین مجازی (در این جا پوشه paymannosraty) کلیک راست می‌کنیم و Create directory and enter it رو می‌زنیم و اسم دلخواه (در اینجا api) رو بهش میدیم. و بعد از این در سمت چپ به مسیر فولدری که پروژه رو توش Publish کردیم می‌ریم و تمامی فایل های اون رو انتخاب و کلیک راست و Upload رو می‌زنیم تا در پوشه api که توی ماشین مجازی ساختیم Upload بشه:بعد از اتمام Upload به شیوه‌ای که در قسمت دوم توضیح داده شد به Ubuntu از طریق Windows Powershell وصل می‌شیم و دستورات زیر رو اجرا می‌کنیم:sudo apt install nanoبرای استقرار پروژه روی لینوکس شما به نصب وب سرور روی Ubuntu دارید٬ من از Apache استفاده کردم٬ از Nginx هم می‌شه استفاده کردsudo apt install apache2	sudo a2enmod rewritesudo a2enmod proxysudo a2enmod proxy_httpsudo a2enmod headerssudo a2enmod sslدر صورت صحیح نصب شدن apache2 و تنظیمات٬ بعد از اجرای دستور زیر وضعیت apache به صورت active خواهد بود:sudo systemctl status apache2.serviceبرای خارج شدن از نمایش وضعیت apache و برگشتن به مود اجرای فرمان کلید Q را فشار می‌دهیمحالا اگه توی مرورگر ماشین اصلی یا همون هاستمون٬ آی پی ماشین مجازی رو وارد کنیم٬ باید صفحه پیش‌فرض apache رو بتونیم ببینیم:نوبت به کانفیگ کردن apache می‌رسه٬ برای ورود به کانفیگ apache دستور زیر رو اجرا می کنیم و صفحه خالی برامون باز می‌شه٬ در واقع ما با این دستور خودمون یه فایل کانفیگ به اسم api.conf ایجاد می‌کنیم:sudo nano /etc/apache2/sites-enabled/api.confدر فایل باز شده دستورات زیر رو قرار می‌دیم٬ نکته‌ی مهم اینکه اگه بخوایم از ماشین اصلی پروژه رو ایجاد کنیم باید در هدر تگ VirtualHost برای پورت 80 ٬ آی پی ماشین مجازی رو وارد کنیمدر قسمت ServerName و ServerAlias هم به دلخواه نام سرور و آلیاس رو ست می‌کنیم:در این مثال تنظیمات برای Https و SSL انجام نشدهکلیدهای Ctrl + X رو فشار و بعد از اون Y رو می‌زنیم تا فایل ذخیره بشه و به محیط اجرای دستورات برگردیمبعد از این نیاز داریم که حتما apache رو با دستور زیر ریست کنیم:sudo systemctl restart apache2بعد از تنظیمات و کانفیگ کردن apache فایل های Publish شده‌ی پروژه رو که به مسیر home/paymannosraty/api منتقل کرده بودیم٬ در دایرکتوری var/www کپی می‌کنیم تا بتونیم سرویس مورد نظرمون رو بسازیم. برای این کار٬ دو دستور زیر رو اجرا می‌کنیم:(دقت کنید که شما باید دایرکتوری موجود خودتون رو با paymannosraty در دستور زیر جایگزین کنید)sudo cp -r /home/paymannosraty/api /var/wwwsudo chown -R www-data:www-data /var/www/apiحالا نوبت به گرفتن پکیج‌های مایکروسافت برای Ubuntu هستش٬ Ubuntu نیاز داره تا یک لیست کامل از این پکیج‌ها داشته باشه. به این منظور دستورات زیر رو اجرا می‌کنیم:1:
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
2:
sudo dpkg -i packages-microsoft-prod.debبعد از اجرای این دستوارت باید apt-transport-https برای ASP.NET Core 5 نصب بشه که با دستورات زیر این کار رو انجام می‌دیم:در آخرین دستور زیر٬ شما نسخه‌ای از NET Core رو نصب می‌کنید که احتیاج دارید٬ برای مثال اگه پروژه شما با NET Core 3.1 هست باید این دستور رو به sudo apt-get install -y aspnetcore-runtime-3.1 تغییر بدیدsudo apt-get updatesudo apt-get install -y apt-transport-httpssudo apt-get updatesudo apt-get install -y aspnetcore-runtime-5.0در صورت موفقیت آمیز بودن این مراحل٬ اقدام به کانفیگ و نصب سرویسی که قراره برنامه رو اجرا کنه می‌کنیم٬ با اجرای دستور زیر فایل کانفیگی برای این سرویس می‌سازیم:sudo nano /etc/systemd/system/api.serviceدر فایل خالی که برامون ایجاد شده٬ کانفیگ زیر رو قرار می‌دیم٬ دقت کنید که شما باید در دستور زیر و در ExecStart نام dll ساخته شده‌ی خودتون رو قرار بدید٬ برنامه من اسمش MyApplication.dll هستش:[Unit]
Description=Api
[Service]
WorkingDirectory=/var/www/api/
ExecStart=/usr/bin/dotnet /var/www/api/MyApplication.dll
Restart=always
# Restart service after 10 seconds if the dotnet service crashes:
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=api
User=www-data
Environment=ASPNETCORE_ENVIRONMENT=Production
[Install]
WantedBy=multi-user.targetبعد از ست کردن این کانفیگ کلیدهای Ctrl + X و بعد از اون Y و بعد از اون Enter رو می‌زنیم تا فایل ذخیره بشه و به محیط اجرای دستور برگردیم.بعد از این کار سرویسی که ساختیم رو فعال و اجرا می‌کنیم:sudo systemctl enable api.servicesudo systemctl start api.serviceو با دستور زیر از وضعیت سرویس مطلع می‌شیم که باید به صورت active باشهsudo systemctl status api.serviceحالا من از ماشین اصلی یک درخواست به سرویس می‌فرستم تا ببینم کار می‌کنه:بله٬ سرویس٬ response مورد نظر من رو با status 200 برگردونددر قسمت بعد نحوه نصب SQL Server و SQLCMD رو برای پروژه هایی که دارای دیتابیس هستند٬ توضیح خواهم داد...</description>
                <category>پیمان نصرتی</category>
                <author>پیمان نصرتی</author>
                <pubDate>Sat, 17 Apr 2021 09:22:08 +0430</pubDate>
            </item>
                    <item>
                <title>استقرار پروژه Asp .Net 5 در Ubuntu Server 20.04 - قسمت دوم</title>
                <link>https://virgool.io/@paymannosraty/%D8%A7%D8%B3%D8%AA%D9%82%D8%B1%D8%A7%D8%B1-%D9%BE%D8%B1%D9%88%DA%98%D9%87-asp-net-5-%D8%AF%D8%B1-ubuntu-server-2004-%D9%82%D8%B3%D9%85%D8%AA-%D8%AF%D9%88%D9%85-lp1xxrda4jid</link>
                <description>Asp .Net Core on Ubuntu server 20.04قسمت دوم - نصب و راه اندازی Ubuntu 20.04 روی ماشین مجازی ساخته شده در Virtual Box 6.1.18:با سلام، من در این مقاله قصد دارم تا بعد از نصب Ubuntu server 20.04 به صورت ماشین مجازی در Virtual Box 6.1.18 پروژه‌ی Asp .net 5 خودم رو روی Ubuntu قرار بدم. امیدوارم که مطالب برای شما مفید باشه.نکته این‌که اگر شما پروژه‌ای با Net Core 3.1 به بالا دارید هم به همین طریق می‌تونید روش استقرار به همین شکله.بعد از Start کردن ماشین مجازی که در قسمت قبل ساختیم به مرحله نصب Ubuntu 20.04 روی ماشین مجازی می‌رسیم. بعد از بالا آمدن ماشین مجازی اگر همه تنظیمات به درستی اعمال شده باشد. در مرحله اول نصب زبان مورد نظر را انتخاب می‌کنیم:مرحله بعد که Network connections چک می‌شود٬ می‌توانیم IP مورد نظر را ست کنیم. با تنظیمات پیش فرض Done را می‌زنیم:در این مرحله اگر قصد نصب proxy داریم آدرس آن را در Proxy address وارد می‌کنیم (من بدون وارد کردن proxy دکمه Done را می‌زنم:مرحله بعد را با تنظیمات پیش فرض Done می‌زنیم:در مرحله بعد تنظیمات Storage ماشین مجازی انجام می‌شود که به صورت پیش فرض حافظه‌ای که به ماشین مجازی اختصاص داده‌ایم شناسایی می‌شود. با تنظیمات پیش فرض Done را می‌زنیم:مرحله بعد نیز مربوط به تنظیمات Storage می‌باشد این مرحله را نیز با تنظیمات پیش فرض Done می‌زنیم:در این مرحله نام و نام سرور و نام کاربری و گذرواژه را تنظیم می‌کنیم. (بعد از نصب برای اتصال به ubuntu به این اطلاعات احتیاج داریم)من هم برای نام و هم برای نام سرور و هم برای نام کاربری از paymannosraty استفاده کرده‌امتنظیمات مرحله بعد مربوط به نصب SSH می‌باشد٬ حتما با استفاده از دکمه‌ی Space کیبورد گزینه‌ی Install openSSH Server را تیک می‌زنیم:بعد از این مرحله وارد نصب Ubuntu می‌شویم٬ این مرحله ممکن است چند دقیقه طول بکشد:بعد از چند دقیقه فرآیند نصب سعی می‌کنه تا آخرین آپدیت ها رو دانلود کنه٬ توصیه می‌کنم این مرحله رو رد نکنید و اجازه بدید دانلود انجام بشه:بعد از انجام آپدیت Reboot now را بزنید:بعد از این Reboot با صفحه زیر مواجه می‌شوید. این خطا به دلیل وجود فایل نصب در درایو ماشین مجازی است که با بستن ماشین مجازی و انتخاب Power off the machine و Start مجدد آن برطرف می‌شود:بعد از بالا آمدن Ubuntu دکمه اینتر را بزنید و با نام کاربری و گذرواژه‌ای که در مرحله نصب ست کرده بودید ورود کنید:بعد از این با سه دستور زیر تنظیمات Ubuntu را آپدیت و آماده کار می‌کنیم:(برای اجرای دستور به صورت Super user do یا همان sudo ٬ ترمینال مجددا از شما پسورد می‌خواهد)ls
sudo su
sudo apt-get updateنصب Ubuntu 20.04 روی ماشین مجازی به اتمام رسید.اتصال به Ubuntu از طریق SSH در Windows Powershell :برای ادامه کار و مشاهده اطلاعات شبکه نیاز به نصب net-tools از طریق دستور زیر داریم.sudo apt install net-toolsسپس از طریق دستور زیر می‌توانیم اطلاعات شبکه ماشین مجازیمان را مشاهده کنیم.ifconfigبا آی پی زیر می‌توانیم به ماشین مجازی دسترسی داشته باشیم:سپس Windows Powershell را به صورت Administrator باز می‌کنیم و دستوری به شکل زیر را اجرا می‌کنیم:ssh  آی پی ماشین مجازی @ نام‌کاربریکه برای نمونه من به شکل زیر می‌شه:ssh paymannosraty@192.168.1.2در صورت موفقیت آمیز بودن شما پیغام Welcome to Ubuntu رو خواهید دید و می‌تونید دستوراتتون رو روی ماشین مجازیتون از طریق هاست و Windows Powershell اجرا کنید.استقرار پروژه Asp .Net 5 در Ubuntu Server 20.04 - قسمت سوم</description>
                <category>پیمان نصرتی</category>
                <author>پیمان نصرتی</author>
                <pubDate>Thu, 15 Apr 2021 20:45:27 +0430</pubDate>
            </item>
                    <item>
                <title>استقرار پروژه  Asp .Net 5 در Ubuntu Server 20.04 - قسمت اول</title>
                <link>https://virgool.io/@paymannosraty/%D8%A7%D8%B3%D8%AA%D9%82%D8%B1%D8%A7%D8%B1-%D9%BE%D8%B1%D9%88%DA%98%D9%87-asp-net-5-%D8%AF%D8%B1-ubuntu-server-2004-%D9%82%D8%B3%D9%85%D8%AA-%D8%A7%D9%88%D9%84-evqwdtqcnlag</link>
                <description>Asp .Net Core on Ubuntu server 20.04قسمت اول - نصب Virtual Box 6.1.18 و ساخت و آماده سازی ماشین مجازی برای نصب Ubuntu 20.04:با سلام، من در این مقاله قصد دارم تا بعد از نصب Ubuntu server 20.04 به صورت ماشین مجازی در Virtual Box 6.1.18 پروژه‌ی Asp .net 5 خودم رو روی Ubuntu قرار بدم. امیدوارم که مطالب برای شما مفید باشه.نکته این‌که اگر شما پروژه‌ای با Net Core 3.1 به بالا دارید هم به همین طریق می‌تونید روش استقرار به همین شکله.1. در قدم اول می‌تونید Virtual Box رو از این لینک و Ubuntu server رو از این لینک دانلود کنید.۲. بعد از دانلود و نصب و اجرای Virtual Box که به اختصار VB گفته می‌شه با زدن New اقدام به ساخت ماشین مجازی می‌کنیم:نکته: من در حال حاضر بر روی VB سیستم خودم ماشینی به اسم myubuntu دارم که ربطی به این آموزش نداره۳. در این پنجره نام دلخواه مورد نظر رو برای ماشین مجازی انتخاب و محل فیزیکی که این ماشین قرار می‌گیره رو مشخص می کنیم. همچنین در Type گزینه Linux و در Version ورژنی که دانلود کردیم رو انتخاب می‌کنیم:4. بعد از زدن Next در این پنجره RAM مورد نظر که به ماشین مجازی اختصاص داده می‌شه رو تعیین می‌کنیم. من بنا به نیازم 2 گیگ انتخاب کردم:5. در مرحله بعد Create a virtual hard disk now رو انتخاب می‌کنیم و Create رو می‌زنیم:6. گزینه VDI رو انتخاب و Next رو می‌زنیم:7. در این پنجره گزینه Dynamically allocated رو می‌زنیم تا از هاردمون به صورت پویا فضا بگیره:8. بعد از این محل ذخیره فایل‌های ماشین مجازی و حداکثر فضایی که می‌خوایم بهش اختصاص بدیم رو تعیین می‌کنیم٬ (برای کاری که من می‌خوام انجام بدم٬ حدودا 20GB کافی هستش) و در نهایت Create رو می‌زنیم:9. ماشین مجازی ما ساخته شد و آمادس تا سیستم عاملمون رو روش نصب کنیم:10. برای نصب سیستم عامل٬ ابتدا روی ماشینی که ساختیم کلیک و Settings رو می‌زنیم و در زبانه Storage و در Storage devices روی آیکون مشخص شده کلیک می‌کنیم و طبق مراحل زیر فایل iso نصب سیستم عامل رو انتخاب می‌کنیم:11. بعد از ثبت این مرحله به Settings بر می‌گردیم و در زبانه Network تنظیمات شبکه رو انجام می‌دیم و در قسمت Attached to گزینه Bridged adapter رو انتخاب می‌کنیم تا هم ماشین مجازی ما دسترسی به اینترنت هاست داشته باشه و هم از هاست بتونیم به ماشین مجازی دسترسی داشته باشیم:12. بعد از این مراحل Settings رو OK و روی ماشین مجازی کلیک و دکمه Start رو می‌زنیم.در قسمت بعد نحوه نصب Ubuntu 20.04 رو روی این ماشین مجازی توضیح خواهم داد...قسمت دوم</description>
                <category>پیمان نصرتی</category>
                <author>پیمان نصرتی</author>
                <pubDate>Thu, 15 Apr 2021 19:02:14 +0430</pubDate>
            </item>
            </channel>
</rss>