ANSI_NULLS در SQL Server
یکی از پارامترها که شاید بیشتر مواقع به آن دقت نکرد باشید، ANSI_NULLS است. بیشتر مواقع که یک کوئری را بصورت خودکار توسط ابزارها میسازید مقدار آن و همچنین مق...
یکی از پارامترها که شاید بیشتر مواقع به آن دقت نکرد باشید، ANSI_NULLS است. بیشتر مواقع که یک کوئری را بصورت خودکار توسط ابزارها میسازید مقدار آن و همچنین مق...
توسط کوئری زیر میتوانید مواردی که در یک جدول بیشتر از یکبار تکرار شدهاند را پیدا کنید. ابتدا توسط Group By مواردی که میخواهیم تکراری بودن را بر روی آنها ت...
در یکی از پروژههای شرکت نیاز به انتقال تمام دیتا دیتابیس به یک دیتابیس جدید بود. برای انجام این کار بعد از بررسی کوئریهای مختلف به کوئری زیر رسیدیم. از راه...
در یکی از پروژهها نیاز به انتقال تمام اطلاعات جداول به دیتابیس جدید بود که در انجام این کار که در مطلب قبلی کلیات آن گفته شد به چند خطا هم برخورد کردیم. خطا...
بصورت پیشفرض در حالت AutoComplete نرم افزار DataGrip اسکیما جدول مورد نظر اضافه نمیشود و در صورت زدن کلید Tab فقط جدول مورد نظر اضافه میشود.
گاهی مواقع نیاز است که خروجی کوئری شما با توجه به شرایط مختلف ترتیب متفاوتی داشته باشید. بطور مثال فرض کنید میخواهید لیست سفارشات بورس بر روی یک قسمت خاص را...
بصورت پیشفرض در صورتی که از Bulk در دیتابیس استفاده کنید، Constraint جدول مورد نظر قبل از عمل Insert پاک شده و پس از اتمام بصورت اتومات ساخته میشوند. پس با...
بصورت پیش فرض امکان استفاده از شرط IF در بخش WHERE یک کوئری وجود ندارد و اگر نیاز به بررسی شرط در حالتهای مختلف داشتید، باید از ترفندهای مختلف استفاده کنید....
اگر نیاز داشتید که تمام سطرهای یک ستون خاص در دیتابیس را به صورت یک خروجی درآورید، شبیه به قابلیت Concat در زبان های برنامه نویسی، میتوانید از کوئری زیر است...
فرض کنید 2 جدول دارید که میخواهید اطلاعات یکی از آنها را با توجه به جدول دوم آپدیت کنید. یا به زبان دیگر این 2 جدول با یکدیگر کلید خارجی دارند و میخواهید ف...
در صورتی که از Dapper برای پاس دادن مقادیر DateTime2 به دیتابیس و یا فراخوانی SP استفاده میکنید، حواستان باشد که Dapper بصورت پیشفرض مقدار Millisecond را د...
یکی از ابزارهای مفید برای چک کردن اتصال به دیتابیسی که در سرورهای دیگر قرار دارد، UDL یا Universal Data Link است که توسط آن حتی سطح دسترسی یوزر مورد نظر را ه...
در یکی از بخشهای جدا سازی و حرکت به سوی ماکروسرویس، نیاز بود تا از صحت عملکرد سیستم اطمینان حاصل کنیم. برای این کار سورسهای سیستم را در یک سرور دیگر اجرا ک...
از ویژگیهای خوب SQL Server وجود داشتن فانکشنها و آبجکتهای مختلف برای راحتسازی کارها است. بطور مثال دو شی زیر که از نوع Dynamic Management Views هستند، بر...
یکی از قابلیتهای کاربردی در SQL Server امکانی با اسم CDC است که به شما قابلیت دانستن تغییرات بر روی یک جدول خاص را میدهد. فرض کنید در برنامهای که بصورت Mi...
یکی از مواردی که در زمان طراحی دیتابیس باید رعایت شود، بحث نامگذاری درست آیتمها است. بصورت پیشفرض SQL SERVER نامهای پیشفرض بطور مثال برای کلید داخلی، کلی...
این دستور کوتاه شده X <= Id AND X >= Id2 است که برای برقرار شدن شرط بین دو مقدار کاربرد دارد. بطور مثال در مواردی که میخواهید یک گزارش بین دو تاریخ را...
این تابع که از نوع Window Function است، برای دریافت اولین سطر در حالت Ordered Partition استفاده میشود.
گاهی مواقع نیاز است تا یک متغیر را توسط دستور SELECT مقداردهی کنید و از آن متغیر در کدهای خود استفاده کنید. راحت ترین راه کوئری زیر است که فقط یک مورد را مقد...
این دستور در واقع یک result set را از نوع موقت ایجاد میکند که به آن Common Table Expression یا CTE نیز میگویند. روش کلی استفاده از آن بصورت زیر است:
یکی از ویژگیهایی که Entity Framework Core دارد، قابلیت لاگ کردن کوئری نهایی است که به دیتابیس ارسال میشود. توسط این امکان میتوانید حالت های مختلف را امتحا...
```sql CREATE TABLE Grades ( [Student] NVARCHAR(50), [Subject] NVARCHAR(50), [Marks] INT ) GO
یکی از امکانات خوب دیتابیس SQL Server امکان پاس دادن لیست به عنوان ورودی به یک stored procedure است که کار شما را برای مواقعی که نیاز به پاس دادن تعداد زیادی...
اسکیما در دیتابیس ها یک شی دربرگیرنده دیگر شیء ها است که بیشتر برای مرتب سازی جداول و دیگر اشیا استفاده میشود. گاهی مواقع نیاز دارید تا اسکیما جدولی را که ا...
گاهی مواقع برای تست کردن فانکشن نوشته شده در دیتابیس، نیاز به فراخوانی آن توسط دستورهای SQL دارید. روش فراخوانی stored procedure ها بسیار راحت است و توسط دست...
یکی از دستورات مفیدی که در SQL Server وجود داره، دستوری به اسم merge هست که کاربردهای مفید زیادی داره. مثلا وقتی میخواید اطلاعات یه جدول رو با جدول دیگه ای س...
گاهی مواقع در SP های نوشته شده شما نیاز به دریافت یک لیست دارید. بطور مثال میخواهید فقط مطالبی که در چند دسته بندی خاص هستند را دریافت کنید. برای این کار میت...
گاهی مواقع در زمان نوشتن یک SP در دیتابیس شما نیاز به استفاده از یک پارامتر ورودی دارید که مقدار Null نیز میتواند داشته باشد و از این متغیر میخواید در قسمت w...
توی تغییری که لازم بود در دیتابیس بدیم، نیاز بود که یه ستون جدید به جدول اضافه بشه که مقدارش GUID بود پس نوعش رو Unique در نظر گرفته بودیم این فیلد میتونست...
شروع سیستم بورس اطلاعات رو در بستر Socket به کارگزارها ارسال میکنه یکی از این اطلاعات که مقدار ریت بالایی هم داره، سرخط های بازار هست که افراد معمولی فقط 5 ...
اگر پروژه شما دارای فایل web.config است و برای محیطهای مختلف آن فایلی مانند web.Prod.config تعریف کردهاید و همچنین از Azure PipeLine برای CI/CD استفاده می...
در یکی از مطالب قبلی وبلاگ چگونگی ارسال پیامها به DeadLetter آموزش داده شد:
اگر در دیتابیس خود جدولی دارید که ستون آن Identity نیست و باید بصورت دستی وارد شود، برای فعال کردن این قابلیت در EntityFrameWork کافی است موارد زیر را به کان...
گاهی مواقع نیاز دارید تا در زبانهای برنامه نویسی بطور مثال سیشارپ یک مدل را به مدل دیگری تبدیل کنید. یکی از پلاگینهایی که این کار را راحت میکند AutoMappe...
یکی از قابلیتهای کاربردی RabbitMQ امکان ارسال پیامهای به خطا خورده به یک صف دیگر برای پردازش یا داشتن لاگ از پیامهای پردازش نشده است. بطور مثال فرض کنید پ...
فرض کنید در یک تراکنش بانکی نیاز دارید که در صورت به خطا خوردن بخشی از کد، تمام موارد انجام شده هم به حالت قبل برگردند. بطور مثال اگر انتقال پول به خطا خورد ...
یکی از نکاتی که در زبان C# در زمان استفاده از Round باید دقت کنید، تفاوت عملکرد اعدادی که به 5 ختم میشوند با دیگر زبانها یا Excel است. بطور مثال در اکسل عد...
با منتشر شدن ورژنهای جدیدتر .Net Core SDK / Runtime و نصب آنها بر روی سیستم، پس از مدتی حجم زیادی از درایو C اشغال میشود که دلیل آن باقی ماندن ورژنهای قدی...
فرض کنید برای دیباگ یا در دسترس بودن امکانات بیشتر یک Agent که با .Net Core نوشته شده است در حالت پابلیش شده میخواهید قسمتی به کد اضافه کنید. بطور مثال اگر ...
در تکنولوژیهای قدیمی مانند wcf اگر بخواهید به یک متود که خروجی آن زیاد است ریکوست بزنید، با خطا زیر مواجه میشود.
برای جلوگیری از استفاده تمام منابع cpu در زبانهای برنامهنویسی میتوان از تابع Thread.Sleep استفاده کرد که منابع را از ترد جاری میگیرد. این تابع ورودی یک ع...
برای فراخوانی یک متود از نوع Task دو روش زیر را میتوان استفاده کرد که در این مطلب به توضیح تفاوت آنها میپردازیم. تفاوت اصلی این دو متود در انتشار خطا یا ex...
بصورت پیشفرض در صورتی که از Bulk در دیتابیس استفاده کنید، Constraint جدول مورد نظر قبل از عمل Insert پاک شده و پس از اتمام بصورت اتومات ساخته میشوند. پس با...
فرض کنید نیاز دارید که مقادیر مختلف را از یک List پاک کنید، البته با توجه به حالتهای مختلف پاک کردن این موارد متفاوت است. یکی از راهها استفاده از Func است ...
در .Net core با معرفی Minimal API, Controllers, Razor Pages, gRPC, Health checks و دیگر موارد، Route های سیستم افزایش پیدا کردهاند و با بزرگ شدن پروژه نیاز ...
گاهی مواقع که نیاز به انتقال فایلهای پروژه و یا فشرده سازی آنها است، برای کاهش حجم پاک کردن فولدرهای bin و obj از حجم نهایی میکاهد. توسط کد زیر میتوانید ا...
توسط کامپایلر C# که با عنوان Roslyn بازنویسی شده است. قابلیت افزونهپذیری به آن اضافه شده است که به شما قابلیت بررسی بیشتر کدها در زمان کامپایل و صادر کردن خ...
فرض کنید برنامهای که نوشتهاید در محیط لوکال به درستی کار میکند و فقط زمانی که آن را پابلیش میدهید، در زمان اجرا با خطا مواجه میشود. یکی از قابلیتهای خو...
روشهای مختلفی برای تزریق وابستگیها وجود دارد که در لینک زیر میتوانید درباره آنها مطالعه کنید:
نکته مهم : زمانی که نمیدانید با exception اتفاق افتاده چه کاری میتوانید بکنید، آن را catch نکنید متن بالا به این معنی است که اگر در متودی که بطور مثال برای...
در صورتی که میخواهید یک Enum را به یکی API که بصورت HTTPGET است، پاس بدهید، حواستان باشد که بصورت پیش فرض معتبر بودن ورودی آن بررسی نمیشود. بطور مثال کد زی...
فرض کنید که شما یک API از نوع GET دارید و میخواهید آن را در قسمتی از کد خود فراخوانی کنید. اما مقادیری که میخواهید به آن پاس بدهید در اتریبوتهای یک کلاس ذ...
برای انجام عملیات بر روی تمام آیتم های یک لیست، روش های مختلفی وجود دارد که تفاوت هایی با هم دارند. یکی از مهمترین موارد در زمانهایی است که شما میخواهید ی...
یکی از ویژگیهایی که Entity Framework Core دارد، قابلیت لاگ کردن کوئری نهایی است که به دیتابیس ارسال میشود. توسط این امکان میتوانید حالت های مختلف را امتحا...
```c# using System; using System.Text;
گاهی مواقع برای مواردی که بسیار کم تغییر میکنند و همچنین تعداد آنها نیز کم است، بجای استفاده از دیتابیس از Enum ها میتوان استفاده کرد. بطور مثال برای جنسیت...
در زبان برنامه نویسی .net کالکشن های مختلفی وجود دارد که دارای کاربردهای متفاوت هستند و استفاده درست از آنها، باعث جلوگیری از به وقوع پیوستن مشکلات در آینده ...
یکی از کتابخانه هایی که کار تبدیل مدل ها در برنامه نویسی را راحت میکند، کتابخانه Automapper است که با استفاده از آن دیگر لازم نیست Atribute های یک مدل را بص...
یکی از کتابخانه های کاربردی در .net کتابخانه Automapper است که در زمان های مپ کردن دیتا کاربرد فراوان دارد. روش استفاده پیشفرض از این کتابخانه بصورت زیر است ...
یکی از کتابخانه هایی که برای انتقال پیام بین سیستم های مختلف وجود دارد، Rabbitmq هست. یکی از قابلیت های مفید این Message Broker قابلیت Clustering هست که در ز...
یکی از پارامترها که شاید بیشتر مواقع به آن دقت نکرد باشید، ANSI_NULLS است. بیشتر مواقع که یک کوئری را بصورت خودکار توسط ابزارها میسازید مقدار آن و همچنین مق...
بهینهسازی دیتابیس و کوئریها یکی از موارد مهم در دیتابیس است تا بتوان از منابع موجود بصورت بهینه استفاده کرد. یکی از روشها برای دانستن کوئریهای زمانبر بر...
یکی از مواردی که در زمان طراحی دیتابیس باید رعایت شود، بحث نامگذاری درست آیتمها است. بصورت پیشفرض SQL SERVER نامهای پیشفرض بطور مثال برای کلید داخلی، کلی...
این دستور کوتاه شده X <= Id AND X >= Id2 است که برای برقرار شدن شرط بین دو مقدار کاربرد دارد. بطور مثال در مواردی که میخواهید یک گزارش بین دو تاریخ را...
این تابع که از نوع Window Function است، برای دریافت اولین سطر در حالت Ordered Partition استفاده میشود.
گاهی مواقع نیاز است تا یک متغیر را توسط دستور SELECT مقداردهی کنید و از آن متغیر در کدهای خود استفاده کنید. راحت ترین راه کوئری زیر است که فقط یک مورد را مقد...
این دستور در واقع یک result set را از نوع موقت ایجاد میکند که به آن Common Table Expression یا CTE نیز میگویند. روش کلی استفاده از آن بصورت زیر است:
در زمان استفاده از SubQuery ها باید حواستان به قلمرو دید باشد. بصورت کلی تمام ستونهای جدول اول در بخش دو دردسترس نیست.
شی Synonym در دیتابیس در واقع یک نام جایگزین برای اشیا دیگر است که نکته مهم در آن این است که این شی میتواند در یک دیتابیس و حتی سرور دیگر باشد. پس با این ام...
این دستور شبیه به WHERE عمل میکند با این تفاوت که دستور HAVING میتواند همراه با aggregate functions استفاده شود. این دستور بیشتر مواقع همراه با GROUP BY اس...
در دیتابیس فانکشنهای موجود به 2 صورت Scalar و Table-Value هستند که در این مطلب تفاوت آنها را بیان میکنیم.
SELECT TOP 100 AVG(Quantity) AS Quantity, MAX(Price) AS Price FROM [dbo].Decision;
قبل از شروع این مطلب نیاز است که ابتدا با CROSS بیشتر آشنا شویم. روش استفاده از این نوع JOIN بصورت زیر است:
```sql CREATE TABLE Grades ( [Student] NVARCHAR(50), [Subject] NVARCHAR(50), [Marks] INT ) GO
یکی از امکانات خوب دیتابیس SQL Server امکان پاس دادن لیست به عنوان ورودی به یک stored procedure است که کار شما را برای مواقعی که نیاز به پاس دادن تعداد زیادی...
اسکیما در دیتابیس ها یک شی دربرگیرنده دیگر شیء ها است که بیشتر برای مرتب سازی جداول و دیگر اشیا استفاده میشود. گاهی مواقع نیاز دارید تا اسکیما جدولی را که ا...
گاهی مواقع برای تست کردن فانکشن نوشته شده در دیتابیس، نیاز به فراخوانی آن توسط دستورهای SQL دارید. روش فراخوانی stored procedure ها بسیار راحت است و توسط دست...
یکی از کتابخونه های خیلی خوب برای لاگ کردن، کتابخونه ای به اسم serilog هستش. توسط این کتابخونه تقریبا میتونید تمام کارهایی که مربوط به لاگ کردن هستش رو انجام...
نوبتی هم باشه، نوبت مشکلاتی هستش که با خود سیستم عامل لینوکس پیدا کردم بعد از حل کردن مشکلاتی که به برنامه نویسی مربوط میشد، میخواستم مطالب رو در وبلاگ منتش...
در قسمت های قبل ما تونستیم پیش نیازهای برنامه نویسی رو نصب و کانفیگ کنیم. حالا نوبت اجرا کردن پروژه هستش برای اجرا برنامه هم نیاز به دیتابیس هست، بعد از نصب...
اگه قسمت های قبل رو دنبال کرده باشید، میدونید که چندتا مشکل ساده رو حل کردیم و تونستیم سیستم رو بالا بیاریم همه چی خوب پیش میرفت و من از همین تعجب میکردم، ا...
در پروژه ای که مدتی پیش روش کار میکرد، نیاز به وارد کردن دیتا تست زیادی بود که بعد از انجام پروژه هم پاک شدن، بعد از انجام پروژه متوجه شدن حجم درایو C خیلی ک...
با نرمافزار زیر میتوانید جزئیات را مشاهده کنید. برای پیدا کردن Domain هم به بخش زیر بروید و بخش Full device name را مشاهده کنید.البته دقت کنید که بخش Devic...
در صورتی که نیاز داشتید تا لیست تمام نرم افزارهای نصب شده بر روی سیستم عامل ویندوز خود را بدست بیاورید، میتوانید از تکه کد زیر استفاده کنید.
آخرین بار که از طریق نرم افزار EaseUS Partition Master حجم درایو C را افزایش دادم، پس از ریست سیستم یک درایو جدید با نام Z هم به سیستم اضافه شده بود که امکان...
یکی از ابزارهای مفید برای چک کردن اتصال به دیتابیسی که در سرورهای دیگر قرار دارد، UDL یا Universal Data Link است که توسط آن حتی سطح دسترسی یوزر مورد نظر را ه...
یکی از مشکلاتی که در زمان کار با Service ها در ویندوز ممکن است با آن روبرو شوید، Stop نشدن سرویس مورد نظر است. یکی از راههای سریع برای توقف سرویس مورد نظر ا...
فرض کنید موارد استفاده از سرویسهایی که دارید را میخواهید در یک پروژه بزرگ پیدا کنید که این پروژه خود شامل زیرپروژه های مختلف است. جستجو عادی به ازای هر سرو...
یکی از تغییراتی که در ویندوز 10 ایجاد شد، معرفی استفاده از Fluent design بود که ظاهر ویندوز را نسبت به نسخه های قبلی تغییر زیادی داد. بیشتر نرم افزارهای منتش...
یکی از ابزارهای خوب ماکروسافت برای مدیریت سرورها، ابزاری به اسم Windows Admin Center هستش، توسط این ابزار میتونید سرورهای مختلف روی شبکه رو کنترل کنید و حتی ...
برای نصب و استفاده از دیتابیس Redis در ویندوز راه های مختلفی وجود داره که راحت ترین اونها استفاده از داکر هستش دلیل این کار هم این هست که ردیس بصورت مستقیم ف...
وقتی از چندتا سیستم عامل استفاده میکنید، در زمان روشن کردن سیستم صفحه ای نشون داده میشه تا بتونید سیستم عامل خودتون رو انتخاب کنید بطور پیش فرض این صفحه ظاه...
نوبتی هم باشه، نوبت مشکلاتی هستش که با خود سیستم عامل لینوکس پیدا کردم بعد از حل کردن مشکلاتی که به برنامه نویسی مربوط میشد، میخواستم مطالب رو در وبلاگ منتش...
در قسمت های قبل ما تونستیم پیش نیازهای برنامه نویسی رو نصب و کانفیگ کنیم. حالا نوبت اجرا کردن پروژه هستش برای اجرا برنامه هم نیاز به دیتابیس هست، بعد از نصب...
اگه قسمت های قبل رو دنبال کرده باشید، میدونید که چندتا مشکل ساده رو حل کردیم و تونستیم سیستم رو بالا بیاریم همه چی خوب پیش میرفت و من از همین تعجب میکردم، ا...
اگه قسمت قبل رو مطالعه کرده باشید، اطلاع دارید که ما تونستیم لینوکس رو کامل نصب کنیم از کارهایی که بعد از نصب هر سیستم عاملی نیاز هست، نصب نرم افزارهای مورد...
یه مدتی بود که می خواستم یه تجربه جدید یاد بگیرم و چیز جدیدی رو امتحان کنم، همچنین سیستم عامل ویندوز هم یکم واسم کند شده بود. یه چند باری هم خواسته بودم لین...
یکی از مشکلاتی که خیلی وقت من رو گرفت، مشکل سیاه شدن صفحه بعد از روشن شدن یا بعد از حالت sleep یا suspend بود تقریبا بیشتر راه هایی که داخل اینترنت بود رو ا...
اگه میخواستید برای صفحه ورود لینوکس که بطور پیشفرض در اوبونتو رنگ بنفش داره، عکس یا رنگ دیگه ای قرار بدید، میتونید آموزش زیر رو دنبال کنید اول از همه پکیج ز...
یکی از خوبی های لینوکس این هست که دستتون برای شخصی سازی خیلی باز هست بطور مثال برای نرم افزار VLC چون صفحه لپ تاپ 4K بود، از تم هایی که خودش داشت نمیتونستم ...
یکی از مشکلاتی که در لینوکس افراد باهاش روبرو میشن، مشکل درایور کارت گرافیک هستش. در بیشتر مواقع مشکل خاصی نیست ولی اگه مثل من از لپ تاپ با دو تا کارت گرافی...
وقتی از چندتا سیستم عامل استفاده میکنید، در زمان روشن کردن سیستم صفحه ای نشون داده میشه تا بتونید سیستم عامل خودتون رو انتخاب کنید بطور پیش فرض این صفحه ظاه...
نوبتی هم باشه، نوبت مشکلاتی هستش که با خود سیستم عامل لینوکس پیدا کردم بعد از حل کردن مشکلاتی که به برنامه نویسی مربوط میشد، میخواستم مطالب رو در وبلاگ منتش...
در قسمت های قبل ما تونستیم پیش نیازهای برنامه نویسی رو نصب و کانفیگ کنیم. حالا نوبت اجرا کردن پروژه هستش برای اجرا برنامه هم نیاز به دیتابیس هست، بعد از نصب...
اگه قسمت های قبل رو دنبال کرده باشید، میدونید که چندتا مشکل ساده رو حل کردیم و تونستیم سیستم رو بالا بیاریم همه چی خوب پیش میرفت و من از همین تعجب میکردم، ا...
اگه قسمت قبل رو مطالعه کرده باشید، اطلاع دارید که ما تونستیم لینوکس رو کامل نصب کنیم از کارهایی که بعد از نصب هر سیستم عاملی نیاز هست، نصب نرم افزارهای مورد...
یه مدتی بود که می خواستم یه تجربه جدید یاد بگیرم و چیز جدیدی رو امتحان کنم، همچنین سیستم عامل ویندوز هم یکم واسم کند شده بود. یه چند باری هم خواسته بودم لین...
Github دارای API های مختلف برای راحتسازی کارها است. فرض کنید میخواهید لیست پروژههایی که به آنها stars دادهاید را بصورت یک لیست داشته باشید.
یکی از ابزارهای خوب که جدیدا معرفی شده است و توسط هوش مصنوعی کدزنی را بسیار آسانتر میکند، ابزاری به اسم copilot است که توسط github ارائه شده که بر پایه AI ب...
یکی از امکانات جالبی که در git موجود هست که من هم تازه باهاش آشنا شدم، امکانی به اسم Submodules هست. این ویژگی به شما این امکان رو میده که کدهای خود رو به پر...
یکی از ویژگی های خوب گیت هاب که استفاده زیادی داره و این سایت هم با استفاده از آن ساخته شده، فایل md یا markdown هست. توسط این قابلیت میتوانید فایل های متنی ...
بعضی مواقع نیاز هست تا اطلاعات یک پروژه در گیتهاب رو بدست آورد. بطور مثلا قبل از clone کردن یک پروژه میخوایم حجم کل پروژه رو بدست بیاریم روش انجام این کار ...
اگه داخل پروژه های Open Source که داخل گیتهاب منتشر شدن، شرکت میکنید، یکی از اولین مشکل هایی که باهاش روبرو میشید، آپدیت کردن پروژه فرک شده از پروژه اصلی هست...
یکی از امکاناتی که گیتهاب در اختیار برنامه نویسان قرار میده، امکان ایجاد یک سایت رایگان با دامنه شخصی هستش، بطور مثال: mhkarami97.github.io که قسمت اول اون...
با منتشر شدن ورژنهای جدیدتر .Net Core SDK / Runtime و نصب آنها بر روی سیستم، پس از مدتی حجم زیادی از درایو C اشغال میشود که دلیل آن باقی ماندن ورژنهای قدی...
فرض کنید برای دیباگ یا در دسترس بودن امکانات بیشتر یک Agent که با .Net Core نوشته شده است در حالت پابلیش شده میخواهید قسمتی به کد اضافه کنید. بطور مثال اگر ...
در .Net core با معرفی Minimal API, Controllers, Razor Pages, gRPC, Health checks و دیگر موارد، Route های سیستم افزایش پیدا کردهاند و با بزرگ شدن پروژه نیاز ...
نوبتی هم باشه، نوبت مشکلاتی هستش که با خود سیستم عامل لینوکس پیدا کردم بعد از حل کردن مشکلاتی که به برنامه نویسی مربوط میشد، میخواستم مطالب رو در وبلاگ منتش...
در قسمت های قبل ما تونستیم پیش نیازهای برنامه نویسی رو نصب و کانفیگ کنیم. حالا نوبت اجرا کردن پروژه هستش برای اجرا برنامه هم نیاز به دیتابیس هست، بعد از نصب...
اگه قسمت های قبل رو دنبال کرده باشید، میدونید که چندتا مشکل ساده رو حل کردیم و تونستیم سیستم رو بالا بیاریم همه چی خوب پیش میرفت و من از همین تعجب میکردم، ا...
نوبتی هم باشه، نوبت مشکلاتی هستش که با خود سیستم عامل لینوکس پیدا کردم بعد از حل کردن مشکلاتی که به برنامه نویسی مربوط میشد، میخواستم مطالب رو در وبلاگ منتش...
در قسمت های قبل ما تونستیم پیش نیازهای برنامه نویسی رو نصب و کانفیگ کنیم. حالا نوبت اجرا کردن پروژه هستش برای اجرا برنامه هم نیاز به دیتابیس هست، بعد از نصب...
اگه قسمت های قبل رو دنبال کرده باشید، میدونید که چندتا مشکل ساده رو حل کردیم و تونستیم سیستم رو بالا بیاریم همه چی خوب پیش میرفت و من از همین تعجب میکردم، ا...
اگه قسمت قبل رو مطالعه کرده باشید، اطلاع دارید که ما تونستیم لینوکس رو کامل نصب کنیم از کارهایی که بعد از نصب هر سیستم عاملی نیاز هست، نصب نرم افزارهای مورد...
یه مدتی بود که می خواستم یه تجربه جدید یاد بگیرم و چیز جدیدی رو امتحان کنم، همچنین سیستم عامل ویندوز هم یکم واسم کند شده بود. یه چند باری هم خواسته بودم لین...
گاهی مواقع یک فایل را به اشتباه پاک میکنید و یا نیاز دارید بدانید یک فایل در چه زمانی پاک شده و محتویات آن نیز چه بوده است. در این مواقع اگر از گیت استفاده ...
در بعضی مواقع شما نیاز دارید که فقط یک Commit را از یک Branch به یک Branch دیگر منتقل کنید و نمیخواهید تمام تغییرات آن برنچ را با برنچ خود Merge کنید. برای ...
یکی از امکانات جالبی که در git موجود هست که من هم تازه باهاش آشنا شدم، امکانی به اسم Submodules هست. این ویژگی به شما این امکان رو میده که کدهای خود رو به پر...
بعضی مواقع اتفاق میافته که یه فایل رو اشتباه داخل Git کامیت میکنید یا بنا به دلایلی میخواید فایل خاصی رو از تاریخچه گیت پاک کنید برای انجام این کار ابتدا بای...
بعضی مواقع نیاز هست تا اطلاعات یک پروژه در گیتهاب رو بدست آورد. بطور مثلا قبل از clone کردن یک پروژه میخوایم حجم کل پروژه رو بدست بیاریم روش انجام این کار ...
اگر در برنامه خود نیاز دارید که خطهای تکراری در یک فایل را پیدا کنید میتوانید از کد زیر استفاده کنید.
در صورتی که نیاز داشتید تا لیست تمام نرم افزارهای نصب شده بر روی سیستم عامل ویندوز خود را بدست بیاورید، میتوانید از تکه کد زیر استفاده کنید.
فرض کنید اینترنت محل کار شما قطع شده است و توسط آن فقط به موارد داخلش شبکه دسترسی دارید، از طرفی برای انجام کارهای خود نیاز به اینترنت خارج از شرکت هم دارید....
X = (sign) m * r^e
بهینهسازی دیتابیس و کوئریها یکی از موارد مهم در دیتابیس است تا بتوان از منابع موجود بصورت بهینه استفاده کرد. یکی از روشها برای دانستن کوئریهای زمانبر بر...
یکی از کتابخونه های خیلی خوب برای لاگ کردن، کتابخونه ای به اسم serilog هستش. توسط این کتابخونه تقریبا میتونید تمام کارهایی که مربوط به لاگ کردن هستش رو انجام...
با بزرگ شدن پروژه و گسترش اون، به تبع اطلاعات بدست اومده بصورت نمایی زیاد میشه و دیگه با ابزارهای قبلی نمیشه این حجم از اطلاعات رو پردازش کرد. بطور مثال اگه ...
در پروژه ای که مدتی پیش روش کار میکرد، نیاز به وارد کردن دیتا تست زیادی بود که بعد از انجام پروژه هم پاک شدن، بعد از انجام پروژه متوجه شدن حجم درایو C خیلی ک...
یکی از مشکلاتی که در لینوکس افراد باهاش روبرو میشن، مشکل درایور کارت گرافیک هستش. در بیشتر مواقع مشکل خاصی نیست ولی اگه مثل من از لپ تاپ با دو تا کارت گرافی...
نوبتی هم باشه، نوبت مشکلاتی هستش که با خود سیستم عامل لینوکس پیدا کردم بعد از حل کردن مشکلاتی که به برنامه نویسی مربوط میشد، میخواستم مطالب رو در وبلاگ منتش...
یه مدتی بود که می خواستم یه تجربه جدید یاد بگیرم و چیز جدیدی رو امتحان کنم، همچنین سیستم عامل ویندوز هم یکم واسم کند شده بود. یه چند باری هم خواسته بودم لین...
فرض کنید نیاز دارید که مقادیر مختلف را از یک List پاک کنید، البته با توجه به حالتهای مختلف پاک کردن این موارد متفاوت است. یکی از راهها استفاده از Func است ...
گاهی مواقع برای تست کردن فانکشن نوشته شده در دیتابیس، نیاز به فراخوانی آن توسط دستورهای SQL دارید. روش فراخوانی stored procedure ها بسیار راحت است و توسط دست...
گاهی مواقع در SP های نوشته شده شما نیاز به دریافت یک لیست دارید. بطور مثال میخواهید فقط مطالبی که در چند دسته بندی خاص هستند را دریافت کنید. برای این کار میت...
در محیط تست و سیستم Local اگر نیاز داشتید که CORS مرورگر را غیر فعال کنید میتوانید از دستور زیر برای اجرای آن استفاده کنید:
یکی از بهترین افزونهها برای مسدود کردن تبلیغات در مرورگرهای مختلف مانند Chrome و Edge افزونه UBlock است که امتیازهای بالاتری نسبت به AdBlock هم دارد و بهتر ...
یکی از افزونه های خوبی که برای مروگرهای بر پایه Chromium وجود داره، افزونه Dark Reader هستش. با استفاده از این افزونه میتونید تم تاریک رو در داخل همه سایت ها...
این الگو در زمان هایی کاربرد دارد که شما یک کار را میخواهید انجام بدهید که بیشتر قسمت های آن یکسان است اما بعضی از قسمت های آن دارای تفاوت است.
یکی از الگوهای طراحی که در برنامه نویسی کاربرد داره، الگویی با اسم Chain Of Responsibility هستش. این الگو در زمان هایی کاربرد داره که یک سری عملیات رو بصورت...
یکی از دیزاین پترن هایی که کاربرد زیادی در برنامه نویسی داره، دیزاین پترن Singleton هستش. این پترن زمان هایی کاربرد داره که ما فقط به یه Instance از کلاس دار...
برای جلوگیری از استفاده تمام منابع cpu در زبانهای برنامهنویسی میتوان از تابع Thread.Sleep استفاده کرد که منابع را از ترد جاری میگیرد. این تابع ورودی یک ع...
برای فراخوانی یک متود از نوع Task دو روش زیر را میتوان استفاده کرد که در این مطلب به توضیح تفاوت آنها میپردازیم. تفاوت اصلی این دو متود در انتشار خطا یا ex...
برای انجام عملیات بر روی تمام آیتم های یک لیست، روش های مختلفی وجود دارد که تفاوت هایی با هم دارند. یکی از مهمترین موارد در زمانهایی است که شما میخواهید ی...
گاهی مواقع که نیاز به انتقال فایلهای پروژه و یا فشرده سازی آنها است، برای کاهش حجم پاک کردن فولدرهای bin و obj از حجم نهایی میکاهد. توسط کد زیر میتوانید ا...
توسط کامپایلر C# که با عنوان Roslyn بازنویسی شده است. قابلیت افزونهپذیری به آن اضافه شده است که به شما قابلیت بررسی بیشتر کدها در زمان کامپایل و صادر کردن خ...
فرض کنید موارد استفاده از سرویسهایی که دارید را میخواهید در یک پروژه بزرگ پیدا کنید که این پروژه خود شامل زیرپروژه های مختلف است. جستجو عادی به ازای هر سرو...
```c# using System; using System.Text;
یکی از مشکلاتی که افراد در زمان کار با http client در زبان برنامه نویسی .net مواجه می شوند، سخت بودن نسبی مدیریت آن و همچنین نیاز به نوشتن کدهای زیاد برای کا...
آخرین مشکلی که باهاش روبرو شدم و یه مدتی وقتم رو گرفت، مشکلی با این مضمون بود که وقتی توسط تگ select در html مقدارش تو فایل ts نمیومد نمونه کدی که استفاده ک...
در یکی از پروژ هایی که در حال انجامشون بودم، در قسمتی نیاز به استفاده از یک سرویس بصورت زیر بود:
در یکی از پروژه هایی که با فریم ورک Vuejs در حال نوشتن بودم و نیاز بود تا یک تم html به vue تبدیل شود، نیاز داشتم تا فایل های js قالب رو داخل پروژه استفاده ک...
برای یکی از پروژه های شخصی که میخواستم داخل github page هم منتشر کنم، با مشکل پیدا نشدن فایل های استاتیک و خطای 404 روبرو میشدم با توجه به اینکه قبلا هم برا...
در یکی از پروژه هایی که با فریم ورک Vuejs در حال نوشتن بودم و نیاز بود تا یک تم html به vue تبدیل شود، نیاز داشتم تا فایل های js قالب رو داخل پروژه استفاده ک...
برای یکی از پروژه های شخصی که میخواستم داخل github page هم منتشر کنم، با مشکل پیدا نشدن فایل های استاتیک و خطای 404 روبرو میشدم با توجه به اینکه قبلا هم برا...
فرض کنید برنامهای که نوشتهاید در محیط لوکال به درستی کار میکند و فقط زمانی که آن را پابلیش میدهید، در زمان اجرا با خطا مواجه میشود. یکی از قابلیتهای خو...
برای یکی از پروژه های شخصی که میخواستم داخل github page هم منتشر کنم، با مشکل پیدا نشدن فایل های استاتیک و خطای 404 روبرو میشدم با توجه به اینکه قبلا هم برا...
یکی از دستورات مفیدی که در SQL Server وجود داره، دستوری به اسم merge هست که کاربردهای مفید زیادی داره. مثلا وقتی میخواید اطلاعات یه جدول رو با جدول دیگه ای س...
اگه داخل پروژه های Open Source که داخل گیتهاب منتشر شدن، شرکت میکنید، یکی از اولین مشکل هایی که باهاش روبرو میشید، آپدیت کردن پروژه فرک شده از پروژه اصلی هست...
یکی از سریعترین کتابخانه ها برای Serializer Json کتابخانهای به اسم Utf8Json است که البته ورژن جدیدتر آن MessagePack است که جایگزین قبلی شده است. طبق تستها...
در قسمتی از پروژه ای که در حال نوشتن بودم و میخواستیم Fail Over رو بر روی قسمتی از سیستم پیاده سازی کنیم تا سیستم بصورت اتومات بتونه بعد از به خطا خوردن و یا...
یکی از مشکلاتی که خیلی وقت من رو گرفت، مشکل سیاه شدن صفحه بعد از روشن شدن یا بعد از حالت sleep یا suspend بود تقریبا بیشتر راه هایی که داخل اینترنت بود رو ا...
یکی از مشکلاتی که در لینوکس افراد باهاش روبرو میشن، مشکل درایور کارت گرافیک هستش. در بیشتر مواقع مشکل خاصی نیست ولی اگه مثل من از لپ تاپ با دو تا کارت گرافی...
Github دارای API های مختلف برای راحتسازی کارها است. فرض کنید میخواهید لیست پروژههایی که به آنها stars دادهاید را بصورت یک لیست داشته باشید.
بعضی مواقع نیاز هست تا اطلاعات یک پروژه در گیتهاب رو بدست آورد. بطور مثلا قبل از clone کردن یک پروژه میخوایم حجم کل پروژه رو بدست بیاریم روش انجام این کار ...
گاهی مواقع نیاز دارید تا در زبانهای برنامه نویسی بطور مثال سیشارپ یک مدل را به مدل دیگری تبدیل کنید. یکی از پلاگینهایی که این کار را راحت میکند AutoMappe...
گاهی مواقع به پاک سازی یا پیدا کردن آیتم های خاصی در یک فایل نیاز هست بطور مثال میخواید تمام style ها رو از یک فایل html پاک کنید. اگه فایل هم حجم زیادی داشت...
گاهی مواقع یک فایل را به اشتباه پاک میکنید و یا نیاز دارید بدانید یک فایل در چه زمانی پاک شده و محتویات آن نیز چه بوده است. در این مواقع اگر از گیت استفاده ...
بعضی مواقع اتفاق میافته که یه فایل رو اشتباه داخل Git کامیت میکنید یا بنا به دلایلی میخواید فایل خاصی رو از تاریخچه گیت پاک کنید برای انجام این کار ابتدا بای...
در تکنولوژیهای قدیمی مانند wcf اگر بخواهید به یک متود که خروجی آن زیاد است ریکوست بزنید، با خطا زیر مواجه میشود.
یک از مشکلاتی که wcf داره، عدم امکان فراخوانی ساده اون داخل مرورگر،شبیه به rest api هست. هرچند که تکنولوژی wcf قدیمی شده اما بعضی مواقع نیاز به استفاده از او...
گاهی مواقع در SP های نوشته شده شما نیاز به دریافت یک لیست دارید. بطور مثال میخواهید فقط مطالبی که در چند دسته بندی خاص هستند را دریافت کنید. برای این کار میت...
گاهی مواقع در زمان نوشتن یک SP در دیتابیس شما نیاز به استفاده از یک پارامتر ورودی دارید که مقدار Null نیز میتواند داشته باشد و از این متغیر میخواید در قسمت w...
در محیط تست و سیستم Local اگر نیاز داشتید که CORS مرورگر را غیر فعال کنید میتوانید از دستور زیر برای اجرای آن استفاده کنید:
یکی از افزونه های خوبی که برای مروگرهای بر پایه Chromium وجود داره، افزونه Dark Reader هستش. با استفاده از این افزونه میتونید تم تاریک رو در داخل همه سایت ها...
یکی از بهترین افزونهها برای مسدود کردن تبلیغات در مرورگرهای مختلف مانند Chrome و Edge افزونه UBlock است که امتیازهای بالاتری نسبت به AdBlock هم دارد و بهتر ...
یکی از افزونه های خوبی که برای مروگرهای بر پایه Chromium وجود داره، افزونه Dark Reader هستش. با استفاده از این افزونه میتونید تم تاریک رو در داخل همه سایت ها...
یکی از انواع Dependency LifeTime که در .net Core وجود دارد Scoped است که در طول یک Request Web معتبر است. فرض کنید میخواهید این طول عمر را خودتان شبیه سازی ...
یکی از دیزاین پترن هایی که کاربرد زیادی در برنامه نویسی داره، دیزاین پترن Singleton هستش. این پترن زمان هایی کاربرد داره که ما فقط به یه Instance از کلاس دار...
فرض کنید در یک تراکنش بانکی نیاز دارید که در صورت به خطا خوردن بخشی از کد، تمام موارد انجام شده هم به حالت قبل برگردند. بطور مثال اگر انتقال پول به خطا خورد ...
یکی از موارد مهم در زبان های برنامه نویسی بحث Transaction ها میباشد. در بعضی موارد تمام مواردی که میخواهید بصورت یک ترنزکشن انجام شوند، بر روی یک سیستم نیس...
یکی از قابلیتهای کاربردی RabbitMQ امکان ارسال پیامهای به خطا خورده به یک صف دیگر برای پردازش یا داشتن لاگ از پیامهای پردازش نشده است. بطور مثال فرض کنید پ...
یکی از کتابخانه هایی که برای انتقال پیام بین سیستم های مختلف وجود دارد، Rabbitmq هست. یکی از قابلیت های مفید این Message Broker قابلیت Clustering هست که در ز...
بصورت پیشفرض در حالت AutoComplete نرم افزار DataGrip اسکیما جدول مورد نظر اضافه نمیشود و در صورت زدن کلید Tab فقط جدول مورد نظر اضافه میشود.
اسکیما در دیتابیس ها یک شی دربرگیرنده دیگر شیء ها است که بیشتر برای مرتب سازی جداول و دیگر اشیا استفاده میشود. گاهی مواقع نیاز دارید تا اسکیما جدولی را که ا...
بصورت پیشفرض در حالت AutoComplete نرم افزار DataGrip اسکیما جدول مورد نظر اضافه نمیشود و در صورت زدن کلید Tab فقط جدول مورد نظر اضافه میشود.
در بعضی مواقع شما نیاز دارید که فقط یک Commit را از یک Branch به یک Branch دیگر منتقل کنید و نمیخواهید تمام تغییرات آن برنچ را با برنچ خود Merge کنید. برای ...
در صورتی که از Dapper برای پاس دادن مقادیر DateTime2 به دیتابیس و یا فراخوانی SP استفاده میکنید، حواستان باشد که Dapper بصورت پیشفرض مقدار Millisecond را د...
یکی از امکانات خوب دیتابیس SQL Server امکان پاس دادن لیست به عنوان ورودی به یک stored procedure است که کار شما را برای مواقعی که نیاز به پاس دادن تعداد زیادی...
یکی از کتابخانه هایی که کار تبدیل مدل ها در برنامه نویسی را راحت میکند، کتابخانه Automapper است که با استفاده از آن دیگر لازم نیست Atribute های یک مدل را بص...
یکی از کتابخانه های کاربردی در .net کتابخانه Automapper است که در زمان های مپ کردن دیتا کاربرد فراوان دارد. روش استفاده پیشفرض از این کتابخانه بصورت زیر است ...
در زبان برنامه نویسی .net کالکشن های مختلفی وجود دارد که دارای کاربردهای متفاوت هستند و استفاده درست از آنها، باعث جلوگیری از به وقوع پیوستن مشکلات در آینده ...
یکی از کتابخانه هایی که کار تبدیل مدل ها در برنامه نویسی را راحت میکند، کتابخانه Automapper است که با استفاده از آن دیگر لازم نیست Atribute های یک مدل را بص...
در صورتی که میخواهید یک Enum را به یکی API که بصورت HTTPGET است، پاس بدهید، حواستان باشد که بصورت پیش فرض معتبر بودن ورودی آن بررسی نمیشود. بطور مثال کد زی...
گاهی مواقع برای مواردی که بسیار کم تغییر میکنند و همچنین تعداد آنها نیز کم است، بجای استفاده از دیتابیس از Enum ها میتوان استفاده کرد. بطور مثال برای جنسیت...
توسط کوئری زیر میتوانید مواردی که در یک جدول بیشتر از یکبار تکرار شدهاند را پیدا کنید. ابتدا توسط Group By مواردی که میخواهیم تکراری بودن را بر روی آنها ت...
این دستور شبیه به WHERE عمل میکند با این تفاوت که دستور HAVING میتواند همراه با aggregate functions استفاده شود. این دستور بیشتر مواقع همراه با GROUP BY اس...
اگر در دیتابیس خود جدولی دارید که ستون آن Identity نیست و باید بصورت دستی وارد شود، برای فعال کردن این قابلیت در EntityFrameWork کافی است موارد زیر را به کان...
یکی از مواردی که در زمان طراحی دیتابیس باید رعایت شود، بحث نامگذاری درست آیتمها است. بصورت پیشفرض SQL SERVER نامهای پیشفرض بطور مثال برای کلید داخلی، کلی...
بصورت پیشفرض در صورتی که از Bulk در دیتابیس استفاده کنید، Constraint جدول مورد نظر قبل از عمل Insert پاک شده و پس از اتمام بصورت اتومات ساخته میشوند. پس با...
یکی از مواردی که در زمان طراحی دیتابیس باید رعایت شود، بحث نامگذاری درست آیتمها است. بصورت پیشفرض SQL SERVER نامهای پیشفرض بطور مثال برای کلید داخلی، کلی...
گاهی مواقع که نیاز به انتقال فایلهای پروژه و یا فشرده سازی آنها است، برای کاهش حجم پاک کردن فولدرهای bin و obj از حجم نهایی میکاهد. توسط کد زیر میتوانید ا...
توسط کامپایلر C# که با عنوان Roslyn بازنویسی شده است. قابلیت افزونهپذیری به آن اضافه شده است که به شما قابلیت بررسی بیشتر کدها در زمان کامپایل و صادر کردن خ...
گاهی مواقع که نیاز به انتقال فایلهای پروژه و یا فشرده سازی آنها است، برای کاهش حجم پاک کردن فولدرهای bin و obj از حجم نهایی میکاهد. توسط کد زیر میتوانید ا...
توسط کامپایلر C# که با عنوان Roslyn بازنویسی شده است. قابلیت افزونهپذیری به آن اضافه شده است که به شما قابلیت بررسی بیشتر کدها در زمان کامپایل و صادر کردن خ...
بصورت پیش فرض امکان استفاده از شرط IF در بخش WHERE یک کوئری وجود ندارد و اگر نیاز به بررسی شرط در حالتهای مختلف داشتید، باید از ترفندهای مختلف استفاده کنید....
فرض کنید 2 جدول دارید که میخواهید اطلاعات یکی از آنها را با توجه به جدول دوم آپدیت کنید. یا به زبان دیگر این 2 جدول با یکدیگر کلید خارجی دارند و میخواهید ف...
بصورت پیش فرض امکان استفاده از شرط IF در بخش WHERE یک کوئری وجود ندارد و اگر نیاز به بررسی شرط در حالتهای مختلف داشتید، باید از ترفندهای مختلف استفاده کنید....
فرض کنید 2 جدول دارید که میخواهید اطلاعات یکی از آنها را با توجه به جدول دوم آپدیت کنید. یا به زبان دیگر این 2 جدول با یکدیگر کلید خارجی دارند و میخواهید ف...
بصورت پیش فرض امکان استفاده از شرط IF در بخش WHERE یک کوئری وجود ندارد و اگر نیاز به بررسی شرط در حالتهای مختلف داشتید، باید از ترفندهای مختلف استفاده کنید....
فرض کنید 2 جدول دارید که میخواهید اطلاعات یکی از آنها را با توجه به جدول دوم آپدیت کنید. یا به زبان دیگر این 2 جدول با یکدیگر کلید خارجی دارند و میخواهید ف...
برای جلوگیری از استفاده تمام منابع cpu در زبانهای برنامهنویسی میتوان از تابع Thread.Sleep استفاده کرد که منابع را از ترد جاری میگیرد. این تابع ورودی یک ع...
برای فراخوانی یک متود از نوع Task دو روش زیر را میتوان استفاده کرد که در این مطلب به توضیح تفاوت آنها میپردازیم. تفاوت اصلی این دو متود در انتشار خطا یا ex...
یکی از سایتهای خوب برای گوش دادن به آهنگ، سایت اسپاتیفای است. در نسخه رایگان این سایت بعد از هر چند آهنگ چند دقیقه تبلیغات پخش میشود. اگر میخواهید این تبل...
یکی از بهترین افزونهها برای مسدود کردن تبلیغات در مرورگرهای مختلف مانند Chrome و Edge افزونه UBlock است که امتیازهای بالاتری نسبت به AdBlock هم دارد و بهتر ...
یکی از سایتهای خوب برای گوش دادن به آهنگ، سایت اسپاتیفای است. در نسخه رایگان این سایت بعد از هر چند آهنگ چند دقیقه تبلیغات پخش میشود. اگر میخواهید این تبل...
یکی از بهترین افزونهها برای مسدود کردن تبلیغات در مرورگرهای مختلف مانند Chrome و Edge افزونه UBlock است که امتیازهای بالاتری نسبت به AdBlock هم دارد و بهتر ...
یکی از پروژههای خوب که برای پیاده سازی Api GateWay وجود دارد، پروژه Ocelot است که تقریبا تمام امکانات مورد نیاز شما را فراهم میکند.
اگر پروژه شما دارای فایل web.config است و برای محیطهای مختلف آن فایلی مانند web.Prod.config تعریف کردهاید و همچنین از Azure PipeLine برای CI/CD استفاده می...
این اولین مطلب من هست و مقدمه ای بر مطالبی هست که قراره در آینده بنویسم، در این وبلاگ قراره درباره مشکلات و چالش هایی که در زمان کار باهاشون روبرو میشم رو بن...
یکی از مشکلاتی که افراد در زمان کار با http client در زبان برنامه نویسی .net مواجه می شوند، سخت بودن نسبی مدیریت آن و همچنین نیاز به نوشتن کدهای زیاد برای کا...
یکی از مشکلاتی که افراد در زمان کار با http client در زبان برنامه نویسی .net مواجه می شوند، سخت بودن نسبی مدیریت آن و همچنین نیاز به نوشتن کدهای زیاد برای کا...
در یکی از پروژ هایی که در حال انجامشون بودم، در قسمتی نیاز به استفاده از یک سرویس بصورت زیر بود:
در یکی از پروژ هایی که در حال انجامشون بودم، در قسمتی نیاز به استفاده از یک سرویس بصورت زیر بود:
برای یکی از پروژه های شخصی که میخواستم داخل github page هم منتشر کنم، با مشکل پیدا نشدن فایل های استاتیک و خطای 404 روبرو میشدم با توجه به اینکه قبلا هم برا...
یکی از امکاناتی که گیتهاب در اختیار برنامه نویسان قرار میده، امکان ایجاد یک سایت رایگان با دامنه شخصی هستش، بطور مثال: mhkarami97.github.io که قسمت اول اون...
یکی از امکاناتی که گیتهاب در اختیار برنامه نویسان قرار میده، امکان ایجاد یک سایت رایگان با دامنه شخصی هستش، بطور مثال: mhkarami97.github.io که قسمت اول اون...
یکی از امکاناتی که گیتهاب در اختیار برنامه نویسان قرار میده، امکان ایجاد یک سایت رایگان با دامنه شخصی هستش، بطور مثال: mhkarami97.github.io که قسمت اول اون...
در یکی از پروژه هایی که با فریم ورک Vuejs در حال نوشتن بودم و نیاز بود تا یک تم html به vue تبدیل شود، نیاز داشتم تا فایل های js قالب رو داخل پروژه استفاده ک...
در یکی از پروژه هایی که با فریم ورک Vuejs در حال نوشتن بودم و نیاز بود تا یک تم html به vue تبدیل شود، نیاز داشتم تا فایل های js قالب رو داخل پروژه استفاده ک...
اگه داخل پروژه های Open Source که داخل گیتهاب منتشر شدن، شرکت میکنید، یکی از اولین مشکل هایی که باهاش روبرو میشید، آپدیت کردن پروژه فرک شده از پروژه اصلی هست...
اگه داخل پروژه های Open Source که داخل گیتهاب منتشر شدن، شرکت میکنید، یکی از اولین مشکل هایی که باهاش روبرو میشید، آپدیت کردن پروژه فرک شده از پروژه اصلی هست...
در پروژه ای که مدتی پیش روش کار میکرد، نیاز به وارد کردن دیتا تست زیادی بود که بعد از انجام پروژه هم پاک شدن، بعد از انجام پروژه متوجه شدن حجم درایو C خیلی ک...
در پروژه ای که مدتی پیش روش کار میکرد، نیاز به وارد کردن دیتا تست زیادی بود که بعد از انجام پروژه هم پاک شدن، بعد از انجام پروژه متوجه شدن حجم درایو C خیلی ک...
شروع سیستم بورس اطلاعات رو در بستر Socket به کارگزارها ارسال میکنه یکی از این اطلاعات که مقدار ریت بالایی هم داره، سرخط های بازار هست که افراد معمولی فقط 5 ...
شروع سیستم بورس اطلاعات رو در بستر Socket به کارگزارها ارسال میکنه یکی از این اطلاعات که مقدار ریت بالایی هم داره، سرخط های بازار هست که افراد معمولی فقط 5 ...
آخرین مشکلی که باهاش روبرو شدم و یه مدتی وقتم رو گرفت، مشکلی با این مضمون بود که وقتی توسط تگ select در html مقدارش تو فایل ts نمیومد نمونه کدی که استفاده ک...
آخرین مشکلی که باهاش روبرو شدم و یه مدتی وقتم رو گرفت، مشکلی با این مضمون بود که وقتی توسط تگ select در html مقدارش تو فایل ts نمیومد نمونه کدی که استفاده ک...
در قسمتی از پروژه ای که در حال نوشتن بودم و میخواستیم Fail Over رو بر روی قسمتی از سیستم پیاده سازی کنیم تا سیستم بصورت اتومات بتونه بعد از به خطا خوردن و یا...
در قسمتی از پروژه ای که در حال نوشتن بودم و میخواستیم Fail Over رو بر روی قسمتی از سیستم پیاده سازی کنیم تا سیستم بصورت اتومات بتونه بعد از به خطا خوردن و یا...
اگه قسمت قبل رو مطالعه کرده باشید، اطلاع دارید که ما تونستیم لینوکس رو کامل نصب کنیم از کارهایی که بعد از نصب هر سیستم عاملی نیاز هست، نصب نرم افزارهای مورد...
توی تغییری که لازم بود در دیتابیس بدیم، نیاز بود که یه ستون جدید به جدول اضافه بشه که مقدارش GUID بود پس نوعش رو Unique در نظر گرفته بودیم این فیلد میتونست...
توی تغییری که لازم بود در دیتابیس بدیم، نیاز بود که یه ستون جدید به جدول اضافه بشه که مقدارش GUID بود پس نوعش رو Unique در نظر گرفته بودیم این فیلد میتونست...
وقتی از چندتا سیستم عامل استفاده میکنید، در زمان روشن کردن سیستم صفحه ای نشون داده میشه تا بتونید سیستم عامل خودتون رو انتخاب کنید بطور پیش فرض این صفحه ظاه...
یکی از خوبی های لینوکس این هست که دستتون برای شخصی سازی خیلی باز هست بطور مثال برای نرم افزار VLC چون صفحه لپ تاپ 4K بود، از تم هایی که خودش داشت نمیتونستم ...
یکی از خوبی های لینوکس این هست که دستتون برای شخصی سازی خیلی باز هست بطور مثال برای نرم افزار VLC چون صفحه لپ تاپ 4K بود، از تم هایی که خودش داشت نمیتونستم ...
یکی از خوبی های لینوکس این هست که دستتون برای شخصی سازی خیلی باز هست بطور مثال برای نرم افزار VLC چون صفحه لپ تاپ 4K بود، از تم هایی که خودش داشت نمیتونستم ...
اگه میخواستید برای صفحه ورود لینوکس که بطور پیشفرض در اوبونتو رنگ بنفش داره، عکس یا رنگ دیگه ای قرار بدید، میتونید آموزش زیر رو دنبال کنید اول از همه پکیج ز...
اگه میخواستید برای صفحه ورود لینوکس که بطور پیشفرض در اوبونتو رنگ بنفش داره، عکس یا رنگ دیگه ای قرار بدید، میتونید آموزش زیر رو دنبال کنید اول از همه پکیج ز...
اگه میخواستید برای صفحه ورود لینوکس که بطور پیشفرض در اوبونتو رنگ بنفش داره، عکس یا رنگ دیگه ای قرار بدید، میتونید آموزش زیر رو دنبال کنید اول از همه پکیج ز...
یکی از مشکلاتی که خیلی وقت من رو گرفت، مشکل سیاه شدن صفحه بعد از روشن شدن یا بعد از حالت sleep یا suspend بود تقریبا بیشتر راه هایی که داخل اینترنت بود رو ا...
یکی از مشکلاتی که خیلی وقت من رو گرفت، مشکل سیاه شدن صفحه بعد از روشن شدن یا بعد از حالت sleep یا suspend بود تقریبا بیشتر راه هایی که داخل اینترنت بود رو ا...
یکی از مشکلاتی که خیلی وقت من رو گرفت، مشکل سیاه شدن صفحه بعد از روشن شدن یا بعد از حالت sleep یا suspend بود تقریبا بیشتر راه هایی که داخل اینترنت بود رو ا...
داده های هم شکل و مشابه، در زمان ویرایش یا ذخیره سازی، با کارایی بیشتری قالب مدیریت هستند. در زبان .net و دیگر زبان های برنامه نویسی، کالکشن یا مجموعه های مخ...
داده های هم شکل و مشابه، در زمان ویرایش یا ذخیره سازی، با کارایی بیشتری قالب مدیریت هستند. در زبان .net و دیگر زبان های برنامه نویسی، کالکشن یا مجموعه های مخ...
داده های هم شکل و مشابه، در زمان ویرایش یا ذخیره سازی، با کارایی بیشتری قالب مدیریت هستند. در زبان .net و دیگر زبان های برنامه نویسی، کالکشن یا مجموعه های مخ...
برای نصب و استفاده از دیتابیس Redis در ویندوز راه های مختلفی وجود داره که راحت ترین اونها استفاده از داکر هستش دلیل این کار هم این هست که ردیس بصورت مستقیم ف...
برای نصب و استفاده از دیتابیس Redis در ویندوز راه های مختلفی وجود داره که راحت ترین اونها استفاده از داکر هستش دلیل این کار هم این هست که ردیس بصورت مستقیم ف...
گاهی مواقع به پاک سازی یا پیدا کردن آیتم های خاصی در یک فایل نیاز هست بطور مثال میخواید تمام style ها رو از یک فایل html پاک کنید. اگه فایل هم حجم زیادی داشت...
گاهی مواقع به پاک سازی یا پیدا کردن آیتم های خاصی در یک فایل نیاز هست بطور مثال میخواید تمام style ها رو از یک فایل html پاک کنید. اگه فایل هم حجم زیادی داشت...
بعضی مواقع اتفاق میافته که یه فایل رو اشتباه داخل Git کامیت میکنید یا بنا به دلایلی میخواید فایل خاصی رو از تاریخچه گیت پاک کنید برای انجام این کار ابتدا بای...
یک از مشکلاتی که wcf داره، عدم امکان فراخوانی ساده اون داخل مرورگر،شبیه به rest api هست. هرچند که تکنولوژی wcf قدیمی شده اما بعضی مواقع نیاز به استفاده از او...
یک از مشکلاتی که wcf داره، عدم امکان فراخوانی ساده اون داخل مرورگر،شبیه به rest api هست. هرچند که تکنولوژی wcf قدیمی شده اما بعضی مواقع نیاز به استفاده از او...
گاهی مواقع در SP های نوشته شده شما نیاز به دریافت یک لیست دارید. بطور مثال میخواهید فقط مطالبی که در چند دسته بندی خاص هستند را دریافت کنید. برای این کار میت...
کاهی مواقع برای دیباگ کردن برنامه های نوشته نیاز به دانستن تمام ترافیک عبوری از سیستم هست. یکی از ابزارهایی که برای این کار استفاده میشه Fiddler هست که به شم...
کاهی مواقع برای دیباگ کردن برنامه های نوشته نیاز به دانستن تمام ترافیک عبوری از سیستم هست. یکی از ابزارهایی که برای این کار استفاده میشه Fiddler هست که به شم...
کاهی مواقع برای دیباگ کردن برنامه های نوشته نیاز به دانستن تمام ترافیک عبوری از سیستم هست. یکی از ابزارهایی که برای این کار استفاده میشه Fiddler هست که به شم...
یکی از دستورات مفیدی که در SQL Server وجود داره، دستوری به اسم merge هست که کاربردهای مفید زیادی داره. مثلا وقتی میخواید اطلاعات یه جدول رو با جدول دیگه ای س...
یکی از کتابخانه های خوب برای نوشتن سرویس GRPC کتابخونه ای با اسم protobuf-net.Grpc هست که قابلیت Code First رو به شما میده و لازم نیست اول فایل proto رو بساز...
یکی از کتابخانه های خوب برای نوشتن سرویس GRPC کتابخونه ای با اسم protobuf-net.Grpc هست که قابلیت Code First رو به شما میده و لازم نیست اول فایل proto رو بساز...
یکی از کتابخانه های خوب برای نوشتن سرویس GRPC کتابخونه ای با اسم protobuf-net.Grpc هست که قابلیت Code First رو به شما میده و لازم نیست اول فایل proto رو بساز...
یکی از کتابخانه های خوب برای نوشتن سرویس GRPC کتابخونه ای با اسم protobuf-net.Grpc هست که قابلیت Code First رو به شما میده و لازم نیست اول فایل proto رو بساز...
یکی از افزونه های خوبی که برای مروگرهای بر پایه Chromium وجود داره، افزونه Dark Reader هستش. با استفاده از این افزونه میتونید تم تاریک رو در داخل همه سایت ها...
یکی از افزونه های خوبی که برای مروگرهای بر پایه Chromium وجود داره، افزونه Dark Reader هستش. با استفاده از این افزونه میتونید تم تاریک رو در داخل همه سایت ها...
با بزرگ شدن پروژه و گسترش اون، به تبع اطلاعات بدست اومده بصورت نمایی زیاد میشه و دیگه با ابزارهای قبلی نمیشه این حجم از اطلاعات رو پردازش کرد. بطور مثال اگه ...
با بزرگ شدن پروژه و گسترش اون، به تبع اطلاعات بدست اومده بصورت نمایی زیاد میشه و دیگه با ابزارهای قبلی نمیشه این حجم از اطلاعات رو پردازش کرد. بطور مثال اگه ...
با بزرگ شدن پروژه و گسترش اون، به تبع اطلاعات بدست اومده بصورت نمایی زیاد میشه و دیگه با ابزارهای قبلی نمیشه این حجم از اطلاعات رو پردازش کرد. بطور مثال اگه ...
با بزرگ شدن پروژه و گسترش اون، به تبع اطلاعات بدست اومده بصورت نمایی زیاد میشه و دیگه با ابزارهای قبلی نمیشه این حجم از اطلاعات رو پردازش کرد. بطور مثال اگه ...
یکی از ابزارهای خوب ماکروسافت برای مدیریت سرورها، ابزاری به اسم Windows Admin Center هستش، توسط این ابزار میتونید سرورهای مختلف روی شبکه رو کنترل کنید و حتی ...
یکی از ابزارهای خوب ماکروسافت برای مدیریت سرورها، ابزاری به اسم Windows Admin Center هستش، توسط این ابزار میتونید سرورهای مختلف روی شبکه رو کنترل کنید و حتی ...
یکی از ابزارهای خوب ماکروسافت برای مدیریت سرورها، ابزاری به اسم Windows Admin Center هستش، توسط این ابزار میتونید سرورهای مختلف روی شبکه رو کنترل کنید و حتی ...
یکی از ابزارهای خوب ماکروسافت برای مدیریت سرورها، ابزاری به اسم Windows Admin Center هستش، توسط این ابزار میتونید سرورهای مختلف روی شبکه رو کنترل کنید و حتی ...
یکی از دیزاین پترن هایی که کاربرد زیادی در برنامه نویسی داره، دیزاین پترن Singleton هستش. این پترن زمان هایی کاربرد داره که ما فقط به یه Instance از کلاس دار...
یکی از کتابخونه های خیلی خوب برای لاگ کردن، کتابخونه ای به اسم serilog هستش. توسط این کتابخونه تقریبا میتونید تمام کارهایی که مربوط به لاگ کردن هستش رو انجام...
یکی از الگوهای طراحی که در برنامه نویسی کاربرد داره، الگویی با اسم Chain Of Responsibility هستش. این الگو در زمان هایی کاربرد داره که یک سری عملیات رو بصورت...
این الگو در زمان هایی کاربرد دارد که شما یک کار را میخواهید انجام بدهید که بیشتر قسمت های آن یکسان است اما بعضی از قسمت های آن دارای تفاوت است.
یکی از تغییراتی که در ویندوز 10 ایجاد شد، معرفی استفاده از Fluent design بود که ظاهر ویندوز را نسبت به نسخه های قبلی تغییر زیادی داد. بیشتر نرم افزارهای منتش...
یکی از تغییراتی که در ویندوز 10 ایجاد شد، معرفی استفاده از Fluent design بود که ظاهر ویندوز را نسبت به نسخه های قبلی تغییر زیادی داد. بیشتر نرم افزارهای منتش...
یکی از ویژگی های خوب گیت هاب که استفاده زیادی داره و این سایت هم با استفاده از آن ساخته شده، فایل md یا markdown هست. توسط این قابلیت میتوانید فایل های متنی ...
یکی از ویژگی های خوب گیت هاب که استفاده زیادی داره و این سایت هم با استفاده از آن ساخته شده، فایل md یا markdown هست. توسط این قابلیت میتوانید فایل های متنی ...
یکی از امکانات جالبی که در git موجود هست که من هم تازه باهاش آشنا شدم، امکانی به اسم Submodules هست. این ویژگی به شما این امکان رو میده که کدهای خود رو به پر...
یکی از موارد مهم در زبان های برنامه نویسی بحث Transaction ها میباشد. در بعضی موارد تمام مواردی که میخواهید بصورت یک ترنزکشن انجام شوند، بر روی یک سیستم نیس...
یکی از موارد مهم در زبان های برنامه نویسی بحث Transaction ها میباشد. در بعضی موارد تمام مواردی که میخواهید بصورت یک ترنزکشن انجام شوند، بر روی یک سیستم نیس...
یکی از موارد مهم در زبان های برنامه نویسی بحث Transaction ها میباشد. در بعضی موارد تمام مواردی که میخواهید بصورت یک ترنزکشن انجام شوند، بر روی یک سیستم نیس...
یکی از موارد مهم در زبان های برنامه نویسی بحث Transaction ها میباشد. در بعضی موارد تمام مواردی که میخواهید بصورت یک ترنزکشن انجام شوند، بر روی یک سیستم نیس...
یکی از کتابخانه هایی که برای انتقال پیام بین سیستم های مختلف وجود دارد، Rabbitmq هست. یکی از قابلیت های مفید این Message Broker قابلیت Clustering هست که در ز...
یکی از کتابخانه هایی که برای انتقال پیام بین سیستم های مختلف وجود دارد، Rabbitmq هست. یکی از قابلیت های مفید این Message Broker قابلیت Clustering هست که در ز...
در بعضی مواقع شما نیاز دارید که فقط یک Commit را از یک Branch به یک Branch دیگر منتقل کنید و نمیخواهید تمام تغییرات آن برنچ را با برنچ خود Merge کنید. برای ...
یکی از امکانات خوب دیتابیس SQL Server امکان پاس دادن لیست به عنوان ورودی به یک stored procedure است که کار شما را برای مواقعی که نیاز به پاس دادن تعداد زیادی...
یکی از کتابخانه های کاربردی در .net کتابخانه Automapper است که در زمان های مپ کردن دیتا کاربرد فراوان دارد. روش استفاده پیشفرض از این کتابخانه بصورت زیر است ...
یکی از کتابخانه های کاربردی در .net کتابخانه Automapper است که در زمان های مپ کردن دیتا کاربرد فراوان دارد. روش استفاده پیشفرض از این کتابخانه بصورت زیر است ...
در زبان برنامه نویسی .net کالکشن های مختلفی وجود دارد که دارای کاربردهای متفاوت هستند و استفاده درست از آنها، باعث جلوگیری از به وقوع پیوستن مشکلات در آینده ...
در زبان برنامه نویسی .net کالکشن های مختلفی وجود دارد که دارای کاربردهای متفاوت هستند و استفاده درست از آنها، باعث جلوگیری از به وقوع پیوستن مشکلات در آینده ...
گاهی مواقع برای مواردی که بسیار کم تغییر میکنند و همچنین تعداد آنها نیز کم است، بجای استفاده از دیتابیس از Enum ها میتوان استفاده کرد. بطور مثال برای جنسیت...
گاهی مواقع برای مواردی که بسیار کم تغییر میکنند و همچنین تعداد آنها نیز کم است، بجای استفاده از دیتابیس از Enum ها میتوان استفاده کرد. بطور مثال برای جنسیت...
```sql CREATE TABLE Grades ( [Student] NVARCHAR(50), [Subject] NVARCHAR(50), [Marks] INT ) GO
```c# using System; using System.Text;
یکی از ویژگیهایی که Entity Framework Core دارد، قابلیت لاگ کردن کوئری نهایی است که به دیتابیس ارسال میشود. توسط این امکان میتوانید حالت های مختلف را امتحا...
برای انجام عملیات بر روی تمام آیتم های یک لیست، روش های مختلفی وجود دارد که تفاوت هایی با هم دارند. یکی از مهمترین موارد در زمانهایی است که شما میخواهید ی...
قبل از شروع این مطلب نیاز است که ابتدا با CROSS بیشتر آشنا شویم. روش استفاده از این نوع JOIN بصورت زیر است:
قبل از شروع این مطلب نیاز است که ابتدا با CROSS بیشتر آشنا شویم. روش استفاده از این نوع JOIN بصورت زیر است:
SELECT TOP 100 AVG(Quantity) AS Quantity, MAX(Price) AS Price FROM [dbo].Decision;
SELECT TOP 100 AVG(Quantity) AS Quantity, MAX(Price) AS Price FROM [dbo].Decision;
در دیتابیس فانکشنهای موجود به 2 صورت Scalar و Table-Value هستند که در این مطلب تفاوت آنها را بیان میکنیم.
در دیتابیس فانکشنهای موجود به 2 صورت Scalar و Table-Value هستند که در این مطلب تفاوت آنها را بیان میکنیم.
این دستور شبیه به WHERE عمل میکند با این تفاوت که دستور HAVING میتواند همراه با aggregate functions استفاده شود. این دستور بیشتر مواقع همراه با GROUP BY اس...
شی Synonym در دیتابیس در واقع یک نام جایگزین برای اشیا دیگر است که نکته مهم در آن این است که این شی میتواند در یک دیتابیس و حتی سرور دیگر باشد. پس با این ام...
شی Synonym در دیتابیس در واقع یک نام جایگزین برای اشیا دیگر است که نکته مهم در آن این است که این شی میتواند در یک دیتابیس و حتی سرور دیگر باشد. پس با این ام...
در زمان استفاده از SubQuery ها باید حواستان به قلمرو دید باشد. بصورت کلی تمام ستونهای جدول اول در بخش دو دردسترس نیست.
در زمان استفاده از SubQuery ها باید حواستان به قلمرو دید باشد. بصورت کلی تمام ستونهای جدول اول در بخش دو دردسترس نیست.
این دستور در واقع یک result set را از نوع موقت ایجاد میکند که به آن Common Table Expression یا CTE نیز میگویند. روش کلی استفاده از آن بصورت زیر است:
در این بخش از مجموعه آموزشهای طراحی سیستم، میخواهیم سایت bit.ly را که یک سایت کوتاه کننده لینک است را با یکدیگر مقایسه کنیم.
در این بخش از مجموعه آموزشهای طراحی سیستم، میخواهیم سایت bit.ly را که یک سایت کوتاه کننده لینک است را با یکدیگر مقایسه کنیم.
در این بخش از مجموعه آموزشهای طراحی سیستم، میخواهیم سایت bit.ly را که یک سایت کوتاه کننده لینک است را با یکدیگر مقایسه کنیم.
گاهی مواقع نیاز است تا یک متغیر را توسط دستور SELECT مقداردهی کنید و از آن متغیر در کدهای خود استفاده کنید. راحت ترین راه کوئری زیر است که فقط یک مورد را مقد...
این تابع که از نوع Window Function است، برای دریافت اولین سطر در حالت Ordered Partition استفاده میشود.
این دستور کوتاه شده X <= Id AND X >= Id2 است که برای برقرار شدن شرط بین دو مقدار کاربرد دارد. بطور مثال در مواردی که میخواهید یک گزارش بین دو تاریخ را...
گاهی مواقع یک فایل را به اشتباه پاک میکنید و یا نیاز دارید بدانید یک فایل در چه زمانی پاک شده و محتویات آن نیز چه بوده است. در این مواقع اگر از گیت استفاده ...
از ابزارهایی که برای مدیریت پروژه استفاده میشود، Git است که کاربردهای زیادی دارد. در زمانهایی که تعداد افرادی که بر روی یک پروژه کار میکنند زیاد میشود، ن...
از ابزارهایی که برای مدیریت پروژه استفاده میشود، Git است که کاربردهای زیادی دارد. در زمانهایی که تعداد افرادی که بر روی یک پروژه کار میکنند زیاد میشود، ن...
از ابزارهایی که برای مدیریت پروژه استفاده میشود، Git است که کاربردهای زیادی دارد. در زمانهایی که تعداد افرادی که بر روی یک پروژه کار میکنند زیاد میشود، ن...
از ابزارهایی که برای مدیریت پروژه استفاده میشود، Git است که کاربردهای زیادی دارد. در زمانهایی که تعداد افرادی که بر روی یک پروژه کار میکنند زیاد میشود، ن...
از ابزارهایی که برای مدیریت پروژه استفاده میشود، Git است که کاربردهای زیادی دارد. در زمانهایی که تعداد افرادی که بر روی یک پروژه کار میکنند زیاد میشود، ن...
از ابزارهایی که برای مدیریت پروژه استفاده میشود، Git است که کاربردهای زیادی دارد. در زمانهایی که تعداد افرادی که بر روی یک پروژه کار میکنند زیاد میشود، ن...
از ابزارهایی که برای مدیریت پروژه استفاده میشود، Git است که کاربردهای زیادی دارد. در زمانهایی که تعداد افرادی که بر روی یک پروژه کار میکنند زیاد میشود، ن...
یکی از مواردی که در زمان طراحی دیتابیس باید رعایت شود، بحث نامگذاری درست آیتمها است. بصورت پیشفرض SQL SERVER نامهای پیشفرض بطور مثال برای کلید داخلی، کلی...
بهینهسازی دیتابیس و کوئریها یکی از موارد مهم در دیتابیس است تا بتوان از منابع موجود بصورت بهینه استفاده کرد. یکی از روشها برای دانستن کوئریهای زمانبر بر...
از افزونههای خوب برای یادگیری زبان و ترجمه کلمات برای مروگرهای بر پایه chromium میتوان به E Joy اشاره کرد. توسط این افزونه تمام موارد مورد نیاز برای ترجمه ...
از افزونههای خوب برای یادگیری زبان و ترجمه کلمات برای مروگرهای بر پایه chromium میتوان به E Joy اشاره کرد. توسط این افزونه تمام موارد مورد نیاز برای ترجمه ...
از افزونههای خوب برای یادگیری زبان و ترجمه کلمات برای مروگرهای بر پایه chromium میتوان به E Joy اشاره کرد. توسط این افزونه تمام موارد مورد نیاز برای ترجمه ...
X = (sign) m * r^e
X = (sign) m * r^e
فرض کنید موارد استفاده از سرویسهایی که دارید را میخواهید در یک پروژه بزرگ پیدا کنید که این پروژه خود شامل زیرپروژه های مختلف است. جستجو عادی به ازای هر سرو...
فرض کنید موارد استفاده از سرویسهایی که دارید را میخواهید در یک پروژه بزرگ پیدا کنید که این پروژه خود شامل زیرپروژه های مختلف است. جستجو عادی به ازای هر سرو...
فرض کنید که شما یک API از نوع GET دارید و میخواهید آن را در قسمتی از کد خود فراخوانی کنید. اما مقادیری که میخواهید به آن پاس بدهید در اتریبوتهای یک کلاس ذ...
فرض کنید که شما یک API از نوع GET دارید و میخواهید آن را در قسمتی از کد خود فراخوانی کنید. اما مقادیری که میخواهید به آن پاس بدهید در اتریبوتهای یک کلاس ذ...
در صورتی که میخواهید یک Enum را به یکی API که بصورت HTTPGET است، پاس بدهید، حواستان باشد که بصورت پیش فرض معتبر بودن ورودی آن بررسی نمیشود. بطور مثال کد زی...
در صورتی که میخواهید یک Enum را به یکی API که بصورت HTTPGET است، پاس بدهید، حواستان باشد که بصورت پیش فرض معتبر بودن ورودی آن بررسی نمیشود. بطور مثال کد زی...
نکته مهم : زمانی که نمیدانید با exception اتفاق افتاده چه کاری میتوانید بکنید، آن را catch نکنید متن بالا به این معنی است که اگر در متودی که بطور مثال برای...
نکته مهم : زمانی که نمیدانید با exception اتفاق افتاده چه کاری میتوانید بکنید، آن را catch نکنید متن بالا به این معنی است که اگر در متودی که بطور مثال برای...
نکته مهم : زمانی که نمیدانید با exception اتفاق افتاده چه کاری میتوانید بکنید، آن را catch نکنید متن بالا به این معنی است که اگر در متودی که بطور مثال برای...
روشهای مختلفی برای تزریق وابستگیها وجود دارد که در لینک زیر میتوانید درباره آنها مطالعه کنید:
روشهای مختلفی برای تزریق وابستگیها وجود دارد که در لینک زیر میتوانید درباره آنها مطالعه کنید:
روشهای مختلفی برای تزریق وابستگیها وجود دارد که در لینک زیر میتوانید درباره آنها مطالعه کنید:
یکی از قابلیتهای کاربردی در SQL Server امکانی با اسم CDC است که به شما قابلیت دانستن تغییرات بر روی یک جدول خاص را میدهد. فرض کنید در برنامهای که بصورت Mi...
یکی از قابلیتهای کاربردی در SQL Server امکانی با اسم CDC است که به شما قابلیت دانستن تغییرات بر روی یک جدول خاص را میدهد. فرض کنید در برنامهای که بصورت Mi...
از ویژگیهای خوب SQL Server وجود داشتن فانکشنها و آبجکتهای مختلف برای راحتسازی کارها است. بطور مثال دو شی زیر که از نوع Dynamic Management Views هستند، بر...
از ویژگیهای خوب SQL Server وجود داشتن فانکشنها و آبجکتهای مختلف برای راحتسازی کارها است. بطور مثال دو شی زیر که از نوع Dynamic Management Views هستند، بر...
از ویژگیهای خوب SQL Server وجود داشتن فانکشنها و آبجکتهای مختلف برای راحتسازی کارها است. بطور مثال دو شی زیر که از نوع Dynamic Management Views هستند، بر...
در یکی از بخشهای جدا سازی و حرکت به سوی ماکروسرویس، نیاز بود تا از صحت عملکرد سیستم اطمینان حاصل کنیم. برای این کار سورسهای سیستم را در یک سرور دیگر اجرا ک...
در یکی از بخشهای جدا سازی و حرکت به سوی ماکروسرویس، نیاز بود تا از صحت عملکرد سیستم اطمینان حاصل کنیم. برای این کار سورسهای سیستم را در یک سرور دیگر اجرا ک...
در یکی از بخشهای جدا سازی و حرکت به سوی ماکروسرویس، نیاز بود تا از صحت عملکرد سیستم اطمینان حاصل کنیم. برای این کار سورسهای سیستم را در یک سرور دیگر اجرا ک...
فرض کنید برنامهای که نوشتهاید در محیط لوکال به درستی کار میکند و فقط زمانی که آن را پابلیش میدهید، در زمان اجرا با خطا مواجه میشود. یکی از قابلیتهای خو...
فرض کنید برنامهای که نوشتهاید در محیط لوکال به درستی کار میکند و فقط زمانی که آن را پابلیش میدهید، در زمان اجرا با خطا مواجه میشود. یکی از قابلیتهای خو...
یکی از مشکلاتی که در زمان کار با Service ها در ویندوز ممکن است با آن روبرو شوید، Stop نشدن سرویس مورد نظر است. یکی از راههای سریع برای توقف سرویس مورد نظر ا...
یکی از مشکلاتی که در زمان کار با Service ها در ویندوز ممکن است با آن روبرو شوید، Stop نشدن سرویس مورد نظر است. یکی از راههای سریع برای توقف سرویس مورد نظر ا...
یکی از ابزارهای مفید برای چک کردن اتصال به دیتابیسی که در سرورهای دیگر قرار دارد، UDL یا Universal Data Link است که توسط آن حتی سطح دسترسی یوزر مورد نظر را ه...
در صورتی که از Dapper برای پاس دادن مقادیر DateTime2 به دیتابیس و یا فراخوانی SP استفاده میکنید، حواستان باشد که Dapper بصورت پیشفرض مقدار Millisecond را د...
در صورتی که از Dapper برای پاس دادن مقادیر DateTime2 به دیتابیس و یا فراخوانی SP استفاده میکنید، حواستان باشد که Dapper بصورت پیشفرض مقدار Millisecond را د...
آخرین بار که از طریق نرم افزار EaseUS Partition Master حجم درایو C را افزایش دادم، پس از ریست سیستم یک درایو جدید با نام Z هم به سیستم اضافه شده بود که امکان...
آخرین بار که از طریق نرم افزار EaseUS Partition Master حجم درایو C را افزایش دادم، پس از ریست سیستم یک درایو جدید با نام Z هم به سیستم اضافه شده بود که امکان...
آخرین بار که از طریق نرم افزار EaseUS Partition Master حجم درایو C را افزایش دادم، پس از ریست سیستم یک درایو جدید با نام Z هم به سیستم اضافه شده بود که امکان...
در .Net core با معرفی Minimal API, Controllers, Razor Pages, gRPC, Health checks و دیگر موارد، Route های سیستم افزایش پیدا کردهاند و با بزرگ شدن پروژه نیاز ...
در .Net core با معرفی Minimal API, Controllers, Razor Pages, gRPC, Health checks و دیگر موارد، Route های سیستم افزایش پیدا کردهاند و با بزرگ شدن پروژه نیاز ...
اگر نیاز داشتید که تمام سطرهای یک ستون خاص در دیتابیس را به صورت یک خروجی درآورید، شبیه به قابلیت Concat در زبان های برنامه نویسی، میتوانید از کوئری زیر است...
اگر نیاز داشتید که تمام سطرهای یک ستون خاص در دیتابیس را به صورت یک خروجی درآورید، شبیه به قابلیت Concat در زبان های برنامه نویسی، میتوانید از کوئری زیر است...
فرض کنید نیاز دارید که مقادیر مختلف را از یک List پاک کنید، البته با توجه به حالتهای مختلف پاک کردن این موارد متفاوت است. یکی از راهها استفاده از Func است ...
فرض کنید نیاز دارید که مقادیر مختلف را از یک List پاک کنید، البته با توجه به حالتهای مختلف پاک کردن این موارد متفاوت است. یکی از راهها استفاده از Func است ...
فرض کنید اینترنت محل کار شما قطع شده است و توسط آن فقط به موارد داخلش شبکه دسترسی دارید، از طرفی برای انجام کارهای خود نیاز به اینترنت خارج از شرکت هم دارید....
فرض کنید اینترنت محل کار شما قطع شده است و توسط آن فقط به موارد داخلش شبکه دسترسی دارید، از طرفی برای انجام کارهای خود نیاز به اینترنت خارج از شرکت هم دارید....
فرض کنید اینترنت محل کار شما قطع شده است و توسط آن فقط به موارد داخلش شبکه دسترسی دارید، از طرفی برای انجام کارهای خود نیاز به اینترنت خارج از شرکت هم دارید....
بصورت پیشفرض در صورتی که از Bulk در دیتابیس استفاده کنید، Constraint جدول مورد نظر قبل از عمل Insert پاک شده و پس از اتمام بصورت اتومات ساخته میشوند. پس با...
برای فراخوانی یک متود از نوع Task دو روش زیر را میتوان استفاده کرد که در این مطلب به توضیح تفاوت آنها میپردازیم. تفاوت اصلی این دو متود در انتشار خطا یا ex...
برای جلوگیری از استفاده تمام منابع cpu در زبانهای برنامهنویسی میتوان از تابع Thread.Sleep استفاده کرد که منابع را از ترد جاری میگیرد. این تابع ورودی یک ع...
در تکنولوژیهای قدیمی مانند wcf اگر بخواهید به یک متود که خروجی آن زیاد است ریکوست بزنید، با خطا زیر مواجه میشود.
در تکنولوژیهای قدیمی مانند wcf اگر بخواهید به یک متود که خروجی آن زیاد است ریکوست بزنید، با خطا زیر مواجه میشود.
فرض کنید برای دیباگ یا در دسترس بودن امکانات بیشتر یک Agent که با .Net Core نوشته شده است در حالت پابلیش شده میخواهید قسمتی به کد اضافه کنید. بطور مثال اگر ...
فرض کنید برای دیباگ یا در دسترس بودن امکانات بیشتر یک Agent که با .Net Core نوشته شده است در حالت پابلیش شده میخواهید قسمتی به کد اضافه کنید. بطور مثال اگر ...
یکی از ابزارهای خوب که جدیدا معرفی شده است و توسط هوش مصنوعی کدزنی را بسیار آسانتر میکند، ابزاری به اسم copilot است که توسط github ارائه شده که بر پایه AI ب...
یکی از ابزارهای خوب که جدیدا معرفی شده است و توسط هوش مصنوعی کدزنی را بسیار آسانتر میکند، ابزاری به اسم copilot است که توسط github ارائه شده که بر پایه AI ب...
یکی از ابزارهای خوب که جدیدا معرفی شده است و توسط هوش مصنوعی کدزنی را بسیار آسانتر میکند، ابزاری به اسم copilot است که توسط github ارائه شده که بر پایه AI ب...
در صورتی که نیاز داشتید تا لیست تمام نرم افزارهای نصب شده بر روی سیستم عامل ویندوز خود را بدست بیاورید، میتوانید از تکه کد زیر استفاده کنید.
با منتشر شدن ورژنهای جدیدتر .Net Core SDK / Runtime و نصب آنها بر روی سیستم، پس از مدتی حجم زیادی از درایو C اشغال میشود که دلیل آن باقی ماندن ورژنهای قدی...
گاهی مواقع نیاز است که خروجی کوئری شما با توجه به شرایط مختلف ترتیب متفاوتی داشته باشید. بطور مثال فرض کنید میخواهید لیست سفارشات بورس بر روی یک قسمت خاص را...
گاهی مواقع نیاز است که خروجی کوئری شما با توجه به شرایط مختلف ترتیب متفاوتی داشته باشید. بطور مثال فرض کنید میخواهید لیست سفارشات بورس بر روی یک قسمت خاص را...
گاهی مواقع نیاز است که خروجی کوئری شما با توجه به شرایط مختلف ترتیب متفاوتی داشته باشید. بطور مثال فرض کنید میخواهید لیست سفارشات بورس بر روی یک قسمت خاص را...
بصورت پیشفرض در حالت AutoComplete نرم افزار DataGrip اسکیما جدول مورد نظر اضافه نمیشود و در صورت زدن کلید Tab فقط جدول مورد نظر اضافه میشود.
با نرمافزار زیر میتوانید جزئیات را مشاهده کنید. برای پیدا کردن Domain هم به بخش زیر بروید و بخش Full device name را مشاهده کنید.البته دقت کنید که بخش Devic...
یکی از نکاتی که در زبان C# در زمان استفاده از Round باید دقت کنید، تفاوت عملکرد اعدادی که به 5 ختم میشوند با دیگر زبانها یا Excel است. بطور مثال در اکسل عد...
یکی از نکاتی که در زبان C# در زمان استفاده از Round باید دقت کنید، تفاوت عملکرد اعدادی که به 5 ختم میشوند با دیگر زبانها یا Excel است. بطور مثال در اکسل عد...
در یکی از پروژهها نیاز به انتقال تمام اطلاعات جداول به دیتابیس جدید بود که در انجام این کار که در مطلب قبلی کلیات آن گفته شد به چند خطا هم برخورد کردیم. خطا...
در یکی از پروژهها نیاز به انتقال تمام اطلاعات جداول به دیتابیس جدید بود که در انجام این کار که در مطلب قبلی کلیات آن گفته شد به چند خطا هم برخورد کردیم. خطا...
در یکی از پروژههای شرکت نیاز به انتقال تمام دیتا دیتابیس به یک دیتابیس جدید بود. برای انجام این کار بعد از بررسی کوئریهای مختلف به کوئری زیر رسیدیم. از راه...
در یکی از پروژههای شرکت نیاز به انتقال تمام دیتا دیتابیس به یک دیتابیس جدید بود. برای انجام این کار بعد از بررسی کوئریهای مختلف به کوئری زیر رسیدیم. از راه...
فرض کنید در یک تراکنش بانکی نیاز دارید که در صورت به خطا خوردن بخشی از کد، تمام موارد انجام شده هم به حالت قبل برگردند. بطور مثال اگر انتقال پول به خطا خورد ...
یکی از قابلیتهای کاربردی RabbitMQ امکان ارسال پیامهای به خطا خورده به یک صف دیگر برای پردازش یا داشتن لاگ از پیامهای پردازش نشده است. بطور مثال فرض کنید پ...
گاهی مواقع نیاز دارید تا در زبانهای برنامه نویسی بطور مثال سیشارپ یک مدل را به مدل دیگری تبدیل کنید. یکی از پلاگینهایی که این کار را راحت میکند AutoMappe...
از کتابخانههایی که برای Tracing, Monitoring وجود دارد میتوان به OpenTelemetry و AppMetrics اشاره کرد. کتابخانه دوم طبق تجربه کاربرد بیشتری دارد و کار کردن ...
از کتابخانههایی که برای Tracing, Monitoring وجود دارد میتوان به OpenTelemetry و AppMetrics اشاره کرد. کتابخانه دوم طبق تجربه کاربرد بیشتری دارد و کار کردن ...
از کتابخانههایی که برای Tracing, Monitoring وجود دارد میتوان به OpenTelemetry و AppMetrics اشاره کرد. کتابخانه دوم طبق تجربه کاربرد بیشتری دارد و کار کردن ...
توسط کوئری زیر میتوانید مواردی که در یک جدول بیشتر از یکبار تکرار شدهاند را پیدا کنید. ابتدا توسط Group By مواردی که میخواهیم تکراری بودن را بر روی آنها ت...
برای تست در دسترس بودن یک Port خاص توسط سرور دیگر آسانترین راه استفاده از دستور telnet در CMD است که بصورت زیر میتوانید از آن استفاده کنید:
برای تست در دسترس بودن یک Port خاص توسط سرور دیگر آسانترین راه استفاده از دستور telnet در CMD است که بصورت زیر میتوانید از آن استفاده کنید:
برای تست در دسترس بودن یک Port خاص توسط سرور دیگر آسانترین راه استفاده از دستور telnet در CMD است که بصورت زیر میتوانید از آن استفاده کنید:
در محیط تست و سیستم Local اگر نیاز داشتید که CORS مرورگر را غیر فعال کنید میتوانید از دستور زیر برای اجرای آن استفاده کنید:
اگر در دیتابیس خود جدولی دارید که ستون آن Identity نیست و باید بصورت دستی وارد شود، برای فعال کردن این قابلیت در EntityFrameWork کافی است موارد زیر را به کان...
در یکی از مطالب قبلی وبلاگ چگونگی ارسال پیامها به DeadLetter آموزش داده شد:
در یکی از مطالب قبلی وبلاگ چگونگی ارسال پیامها به DeadLetter آموزش داده شد:
اگر پروژه شما دارای فایل web.config است و برای محیطهای مختلف آن فایلی مانند web.Prod.config تعریف کردهاید و همچنین از Azure PipeLine برای CI/CD استفاده می...
Github دارای API های مختلف برای راحتسازی کارها است. فرض کنید میخواهید لیست پروژههایی که به آنها stars دادهاید را بصورت یک لیست داشته باشید.
برای یکی از پروژههای شخصی نیاز به ویرایش فایل PSD توسط کد بود تا نیاز به ویرایش دستی آن فایل و خروجی گرفتن از آن نباشد. بدین منظور با کتابخانه Aspose.PSD آش...
برای یکی از پروژههای شخصی نیاز به ویرایش فایل PSD توسط کد بود تا نیاز به ویرایش دستی آن فایل و خروجی گرفتن از آن نباشد. بدین منظور با کتابخانه Aspose.PSD آش...
برای یکی از پروژههای شخصی نیاز به ویرایش فایل PSD توسط کد بود تا نیاز به ویرایش دستی آن فایل و خروجی گرفتن از آن نباشد. بدین منظور با کتابخانه Aspose.PSD آش...
یکی از پروژههای خوب که برای پیاده سازی Api GateWay وجود دارد، پروژه Ocelot است که تقریبا تمام امکانات مورد نیاز شما را فراهم میکند.
یکی از پروژههای خوب که برای پیاده سازی Api GateWay وجود دارد، پروژه Ocelot است که تقریبا تمام امکانات مورد نیاز شما را فراهم میکند.
اگر حریم خصوصی برای شما مهم است و دوست دارید شبکههای اجتماعی سایتهایی که مشاهده میکنید را ردیابی کنند، این افزونه کار شما را بسیار راحت میکند. همچنین توس...
اگر حریم خصوصی برای شما مهم است و دوست دارید شبکههای اجتماعی سایتهایی که مشاهده میکنید را ردیابی کنند، این افزونه کار شما را بسیار راحت میکند. همچنین توس...
اگر حریم خصوصی برای شما مهم است و دوست دارید شبکههای اجتماعی سایتهایی که مشاهده میکنید را ردیابی کنند، این افزونه کار شما را بسیار راحت میکند. همچنین توس...
اگر حریم خصوصی برای شما مهم است و دوست دارید شبکههای اجتماعی سایتهایی که مشاهده میکنید را ردیابی کنند، این افزونه کار شما را بسیار راحت میکند. همچنین توس...
اگر حریم خصوصی برای شما مهم است و دوست دارید شبکههای اجتماعی سایتهایی که مشاهده میکنید را ردیابی کنند، این افزونه کار شما را بسیار راحت میکند. همچنین توس...
یکی از سایتهای خوب برای گوش دادن به آهنگ، سایت اسپاتیفای است. در نسخه رایگان این سایت بعد از هر چند آهنگ چند دقیقه تبلیغات پخش میشود. اگر میخواهید این تبل...
یکی از سایتهای خوب برای گوش دادن به آهنگ، سایت اسپاتیفای است. در نسخه رایگان این سایت بعد از هر چند آهنگ چند دقیقه تبلیغات پخش میشود. اگر میخواهید این تبل...
یکی از انواع Dependency LifeTime که در .net Core وجود دارد Scoped است که در طول یک Request Web معتبر است. فرض کنید میخواهید این طول عمر را خودتان شبیه سازی ...
یکی از انواع Dependency LifeTime که در .net Core وجود دارد Scoped است که در طول یک Request Web معتبر است. فرض کنید میخواهید این طول عمر را خودتان شبیه سازی ...
یکی از انواع Dependency LifeTime که در .net Core وجود دارد Scoped است که در طول یک Request Web معتبر است. فرض کنید میخواهید این طول عمر را خودتان شبیه سازی ...
اگر در برنامه خود نیاز دارید که خطهای تکراری در یک فایل را پیدا کنید میتوانید از کد زیر استفاده کنید.
اگر در برنامه خود نیاز دارید که خطهای تکراری در یک فایل را پیدا کنید میتوانید از کد زیر استفاده کنید.
اگر در برنامه خود نیاز دارید که خطهای تکراری در یک فایل را پیدا کنید میتوانید از کد زیر استفاده کنید.
یکی از سریعترین کتابخانه ها برای Serializer Json کتابخانهای به اسم Utf8Json است که البته ورژن جدیدتر آن MessagePack است که جایگزین قبلی شده است. طبق تستها...
یکی از سریعترین کتابخانه ها برای Serializer Json کتابخانهای به اسم Utf8Json است که البته ورژن جدیدتر آن MessagePack است که جایگزین قبلی شده است. طبق تستها...
یکی از سریعترین کتابخانه ها برای Serializer Json کتابخانهای به اسم Utf8Json است که البته ورژن جدیدتر آن MessagePack است که جایگزین قبلی شده است. طبق تستها...