Build گرفتن از پروژه قبل از پوش کردن git commit


در مواقعی که چندین ساعت پشت سرهم کار انجام میدهیم و خسته می شویم، امکان این کار وجود دارد که پروژه را سریعا push کنیم و بررسی نکنیم که اصلا پروژه بیلد میشود یا نه. در Git این قابلیت وجود دارد که قبل از پوش کردن یکسری دستورات را ....
ادامه مطلب

تست نویسی با دیتابیس واقعی


هنگام نوشتن تست ها در بعضی موارد نیازمند ارتباط با دیتابیس هستیم که دیتایی را از آن بخوانیم و یا رکوردهایی را در آن ذخیره کنیم. اگر از یک دیتابیس ثابت استفاده کنیم، هربار که تست ها اجرا شوند مقادیر موجود در دیتابیس تغییر خواهند کرد و اگر شخص دیگری با دیتابیس کار کند و دیتاهای آن را تغییر دهد ....
ادامه مطلب

تست نویسی برای APIها در Asp.Net Core


در مقاله قبل به بررسی مثالی از نوشتن تست واحد پرداختیم. در این مطلب می خواهیم به پیاده سازی تست برای APIها بپردازیم با استفاده از کتابخانه xUnit. برای این کار ابتدا یک پروژه از نوع Asp.Net Core Web App ایجاد می کنیم. سپس یک کنترلر به نام UsersController ایجاد میکنیم ....
ادامه مطلب

استفاده از ThrowHelper به جای throw new Exception


زمانی که در برنامه می خواهیم خطایی را صادر کنید، معمولا از throw new exception استفاده می کنیم و متن مناسب خطا را درون کلاس exception قرار می دهیم. اما اگر تعداد این صادر کردن خطاها زیاد شود باعث افزایش کد assembly می شود. ....
ادامه مطلب

اضافه کردن Expiration time به دیتابیس مونگو در Asp.Net Core


گاهی اوقات نیازمند آن هستنید که دیتاهایی را برای مدت زمان مشخصی نگه دارید و سپس آنها را پاک کنید. اگر بخواهید خودتان این کار را انجام دهید، کاری وقت گیر و غیرمعقولی را انجام می دهید. اما می توانید با استفاده از Expiration time مربوط به دیتابیس Mongo و یا TTL مربوط به ردیس این کار را انجام دهید. د ....
ادامه مطلب