مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

مهدی الهی

عضویت از 1396/07/29

ارسال ایمیل در Asp.net Core

  • چهارشنبه 18 مهر 1397
  • 19:40
تشکر میکنم

سلام 
میخواهم زمانی که کاربر ثبت نام کرد بعد از 3 روز برایش یه ایمیل ارسال بشه ، یعنی بیاد چک کنه تاریخ عضویت کاربران رو با تاریخ فعلی ، اگه به 3 روز رسیده بود برای کاربر یه  ایمیل ارسال بشه.
در فرستادن ایمیل مشکلی ندارم 

ولی نمیدونم به چه صورت باید  چک کنه تاریخ  عضویت کاربر رو بعد از اینکه 3 روز از ثبت نامش گذشت ، ایمیل براش ارسال بشه ؟ لطفا راهنماییم کنید.

پاسخ های این پرسش

تعداد پاسخ ها : 1 پاسخ
کاربر سایت

salman_b

عضویت از 1396/02/18

  • چهارشنبه 18 مهر 1397
  • 22:22

به نظرم بهتره این کار رو بسپارین به یک job در sql server

sql server خودش سرویسی برای ارسال ایمیل داره، راجع به job هم تحقیق کنید.

سمت اپلیکیشن هم میتونید با استفاده از scheduled task میتونید لیست کاربران رو با توجه به منطقی که دارید دریافت کنید و براشون ایمیل ارسال کنید.

این که چطوری چک کنه هم که قطعا باید زمان ثبت نام کاربر رو در دیتابیس ذخیره کنید و اون رو با زمان حال چک کنید، یک فیلد bit هم برای اینکه آیا قبلا بهش ایمیل ارسال شده یا خیر بذارید.

زمان بندی برای اجرای background در asp core

ارسال ایمیل در sql server

job در Sql server

و در آخر چک کردن فاصه ی تاریخ در سی شارپ:

            if((DateTime.Now - signUpDate).Days > 3)
            {
                // do work
            }

اگر از لینک استفاده میکنید هم به راحتی میتونید شرط رو به عنوان Expression بنویسید و کاربرها رو با این شرط خاص دریافت کنید.(البته به اضافه اینکه چک کنه قبلا براشون ایمیل نفرستاده باشین!)

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

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

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)