使用Get Set修饰符和函数更改C#MVC中的变量值

使用Get Set修饰符和函数更改C#MVC中的变量值,c#,C#,我想将每个考试日期转换为本地时区(本地时区保存在数据库中)我该怎么做我尝试了以下方法 public class ExaminationModel { [DataMember] public int ExaminationId { get; set; } [DataMember] public string ExaminationName { get; set; } [DataMember]

我想将每个考试日期转换为本地时区(本地时区保存在数据库中)我该怎么做我尝试了以下方法

 public class ExaminationModel
    {
        [DataMember]
        public int ExaminationId { get; set; }

        [DataMember]
        public string ExaminationName { get; set; }

        [DataMember]
        public DateTime ExaminationDate { get ; set; }

}

我有一个stcakoverflowexpection我怎么能这么做我错过了什么?感谢您的帮助?

您收到了错误,因为您正在递归调用ExaminationalDate属性。您可以使用私有变量,如下所示:

 [DataMember]
    public DateTime ExaminationDate
    {
        get { return ConvertToLocalDateTime(); }

        set { }
    }


  public DateTime ConvertToLocalDateTime()
        {

            string timezone = System.Web.HttpContext.Current.Session["timezone"].ToString();
            TimeZoneInfo infotime = TimeZoneInfo.FindSystemTimeZoneById(timezone);
            DateTime thisDate = TimeZoneInfo.ConvertTimeFromUtc(ExaminationDate, infotime);

            return thisDate;
        }
    private DateTime examinationDate;

    public DateTime ExaminationDate
    {
        get { return ConvertToLocalDateTime(examinationDate); }
        set { examinationDate = value; }
    }

    public DateTime ConvertToLocalDateTime(DateTime examinationDate)
    {

        string timezone = TimeZone.CurrentTimeZone.StandardName;
        TimeZoneInfo infotime = TimeZoneInfo.FindSystemTimeZoneById(timezone);
        DateTime thisDate = TimeZoneInfo.ConvertTimeFromUtc(examinationDate, infotime);
        return thisDate;
    }