نمایش نتایج 1 تا 5 از 5

نام تاپیک: ثبت ساعت و تاریخ سمت سرور در Codefirst

  1. #1

    ثبت ساعت و تاریخ سمت سرور در Codefirst

    سلام
    فرض کنید کلاس زیر را داریم

    public class Test
    {
    [Key]
    public int Id { get; set; }
    [Column(TypeName = "Date")]
    public DateTime Date { get; set; }
    public TimeSpan Time { get; set; }
    }

    حال می خواهم ساعت و زمان در بانک اطلاعاتی بصورت اتوماتیک ثبت شود در migration بای چه کدی بنویسم و ایا در خود کلاس اصلا می توانم تعریف کنم
    باتشکر

  2. #2

    نقل قول: ثبت ساعت و تاریخ سمت سرور در Codefirst

    در خود كلاس اگر تو قسمت ستر بنویسید هربار كه اضافه میكنید یا "ویرایش" میكنید تایم رو ست میكنه (مثلا برای فیلد LastUpdate بدرد میخوره)
    private DateTime _date = DateTime.Now;
    public DateTime Date
    {
    get { return _date; }
    set { _date = value; }
    }
    تو مایگریشن بذارید همونی میشه كه دنبالش هستید فقط موقع افزودن ركورد جدید اگر خالی بذارید ست میشه :
    public static void Configure(DbModelBuilder builder){
    builder.Entity<Company>().Property(c => c.Status).HasColumnAnnotation("Default", 0);
    }
    تو متد افزودن هم میتونید دستی مقدار دهی كنید.

  3. #3

    نقل قول: ثبت ساعت و تاریخ سمت سرور در Codefirst

    راه ساده تر این هست :

    public DateTime Date { get; set; } = DateTime.Now;

  4. #4

    نقل قول: ثبت ساعت و تاریخ سمت سرور در Codefirst

    می توانید یک Interface تعریف کنید که فقط فیلد تاریخ و ساعت رو داشته باشه. بعد متد SaveChanges در DbContext رو Override کنید و چک کنید که اگر شی دارای این Interface باشه مقدار تاریخ و ساعت رو درج کنه. بعد فقط کافیه Interface رو به هر جدولی که نیاز به تاریخ و ساعت داره اضافه کنید. اینجوری یک مدریت مرکزی روی ثبت تاریخ و ساعت دارید.


    foreach (
    var entry in
    ChangeTracker.Entries()
    .Where(e => e.Entity is ITimeCreatedInfo && e.State == EntityState.Added)
    .Select(e => e.Entity as ITimeCreatedInfo))
    {
    entry.TimeCreated = DateTime.Now;
    }


    اینترفیس :


    public interface ITimeCreatedInfo
    {
    DateTime TimeCreated { get; set; }
    }



    روشهای دیگه هم خوبه اما باید دقت کنید که وقتی دارید ویرایش می کنید زمان ایجاد نباید تغییر کنه. زمان ایجاد یک بار و در زمان ایجاد رکورد ثبت میشه.

  5. #5

    نقل قول: ثبت ساعت و تاریخ سمت سرور در Codefirst

    نقل قول نوشته شده توسط hakim22 مشاهده تاپیک
    می توانید یک Interface تعریف کنید که فقط فیلد تاریخ و ساعت رو داشته باشه. بعد متد SaveChanges در DbContext رو Override کنید و چک کنید که اگر شی دارای این Interface باشه مقدار تاریخ و ساعت رو درج کنه. بعد فقط کافیه Interface رو به هر جدولی که نیاز به تاریخ و ساعت داره اضافه کنید. اینجوری یک مدریت مرکزی روی ثبت تاریخ و ساعت دارید.


    foreach (
    var entry in
    ChangeTracker.Entries()
    .Where(e => e.Entity is ITimeCreatedInfo && e.State == EntityState.Added)
    .Select(e => e.Entity as ITimeCreatedInfo))
    {
    entry.TimeCreated = DateTime.Now;
    }


    اینترفیس :


    public interface ITimeCreatedInfo
    {
    DateTime TimeCreated { get; set; }
    }



    روشهای دیگه هم خوبه اما باید دقت کنید که وقتی دارید ویرایش می کنید زمان ایجاد نباید تغییر کنه. زمان ایجاد یک بار و در زمان ایجاد رکورد ثبت میشه.
    سلام
    مهندس میشه کاملتر کدها را قرار دهید
    باتشکر

تاپیک های مشابه

  1. سوال: خواندن مقدار یه متغیر عمومی سمت سرور در سمت client
    نوشته شده توسط unishomal در بخش ASP.NET Web Forms
    پاسخ: 25
    آخرین پست: سه شنبه 05 بهمن 1389, 13:39 عصر
  2. استفاده از event های سمت سرور در کنترل های html ای
    نوشته شده توسط shirin_sh1024 در بخش ASP.NET Web Forms
    پاسخ: 13
    آخرین پست: پنج شنبه 31 تیر 1389, 17:53 عصر
  3. گفتگو: روشی برای فارسی نویسی در کنترل textbox سمت سرور در ASP.net
    نوشته شده توسط pezhman_roudkhaneei در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: چهارشنبه 13 آبان 1388, 19:47 عصر
  4. ثبت ساعت و تاریخ در زمان ارسال فرم
    نوشته شده توسط sogoli در بخش PHP
    پاسخ: 4
    آخرین پست: دوشنبه 30 دی 1387, 12:29 عصر
  5. مشکل در فارسی شدن در سمت سرور در جاوا
    نوشته شده توسط mojtaba_java در بخش Java EE : نگارش سازمانی جاوا
    پاسخ: 5
    آخرین پست: یک شنبه 13 اسفند 1385, 20:51 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •