在foreach语句中设置变量

本文关键字:设置 变量 语句 foreach | 更新日期: 2023-09-27 18:19:44

我想将foreach语句中的一个值设置为一个变量,这样我就可以解析该值。我的代码如下:

 @foreach (var visit in visitslist){
 CultureInfo MyCultureInfo = new CultureInfo("en-GB");
 var MyString = (visit.VisitDate);
 DateTime MyDateTime = DateTime.Parse(MyString, MyCultureInfo);
 <input type="text" value="@MyDateTime" />}

我遇到的问题是,这并没有降低访问的价值。VisitDate through。我尝试过从数据库手动输入一个值,效果很好,所以我知道这不是数据类型的问题。

在foreach语句中设置变量

如果var的类型为DateTime,则无需解析不同区域性中的对象。如果您的应用程序特定于en-GB区域性,则可以将"当前线程区域性"设置为Thread.CurrentThread.CurrentCulture = new CultureInfo("en-GB");。因此,当您在视图中使用<input type="text" value="@MyDateTime" />时,它将自动以en-GB格式显示在值中。

如果你想在英国时间使用它,你只需要改变它的格式,先解析它,然后用新格式打印它

DateTime dt = DateTime.ParseExact(StartDate, "MM/dd/yyyy HH:mm:ss", CultureInfo.InvariantCulture);
dt.ToString("dd/MM/yyyy HH:mm:ss");