public class ExaminationModel
{
[DataMember]
public int ExaminationId { get; set; }
[DataMember]
public string ExaminationName { get; set; }
[DataMember]
public DateTime ExaminationDate { get ; set; }
}
我想将每个考试变为本地时区(本地时区保存在数据库中(,我该如何尝试我尝试一些事情,例如
[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;
}
我得到了stcakoverflow侵犯,我该怎么做我所缺少的?感谢一些帮助?
您正在遇到错误,因为您正在递归调用考试属性。您可以使用以下私有变量:
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;
}