c#修改字符串
本文关键字:字符串 修改 | 更新日期: 2023-09-27 18:16:14
我正在研究一个应用程序,在这个应用程序中,我从数据库中检索要在cshtml中的表中显示的数据。我调用的一个字段是日期字段。它在数据库中的数据以以下格式存储:MMDDYY,即;091504. 由于我不需要详细说明的原因,数据必须以该格式存储在数据库中。我想弄清楚如何修改它的显示,以显示09/15/04而不是091504。
@model IEnumerable<BillingApp.Models.SERV_CHARGE_INT_RATE_NSF_PENALTY>
<table id="Test" class="tablesorter">
<thead>
<tr>
<th>Effective Date</th>
</tr>
</thead>
@if (Model.Count() == 0)
{
<tbody>
<tr>
<td colspan="4">
No Records match search criteria
</td>
</tr>
</tbody>
}
else{
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.EFFECTIVE_DATE)
</td>
</tr>
}
</tbody>
</table>
如果你使用一个DateTime对象,你可以尝试在你的模型中使用[DisplayFormat]
。
,
[DisplayFormat(DataFormatString = "{MM/dd/yy}")]
public DateTime EFFECTIVE_DATE { get; set }
如果你使用的是string
而不是DateTime
,你可以考虑使用@ByteBlast的解决方案转换数据类型:
DateTime.ParseExact(item.EFFECTIVE_DATE, "MMddyy", CultureInfo.CurrentCulture);
处理这个问题有很多方法。
一种方法是让模型类将数据库中的日期解析为实际的DateTime对象,然后在整个应用程序中使用它们(如果需要对日期执行其他操作,可能是最好的选择)。
另一种方法是在显示字符串时将其分割,如果只需要显示日期的话。像这样:
@foreach (var item in Model)
{
<tr>
<td>
@(item.EFFECTIVE_DATE.Substring(0,2))/@(item.EFFECTIVE_DATE.Substring(2,2))/@(item.EFFECTIVE_DATE.Substring(4,2))
</td>
</tr>
}