C# 如何设置@Html.DropDownList的dataTextFormatString
在我的C# 如何设置@Html.DropDownList的dataTextFormatString,c#,asp.net-mvc,date-format,C#,Asp.net Mvc,Date Format,在我的MVC视图中,我正在显示dropDownList。它包含我从数据库中检索到的日期列表。日期是日期和时间的组合。我不需要显示时间 如何设置显示格式。我的代码如下 看法 @Html.DropDownList("regdate"); 控制器 ViewBag.regdate= new SelectList(regdatesList); 如何使用DataFormatString=“{0:dd/MM/yyyyy}”解决这个问题 编辑 查询用于获取日期 var regdatesList=fr
MVC
视图中,我正在显示dropDownList
。它包含我从数据库中检索到的日期列表。日期是日期和时间的组合。我不需要显示时间
如何设置显示格式。我的代码如下
看法
@Html.DropDownList("regdate");
控制器
ViewBag.regdate= new SelectList(regdatesList);
如何使用DataFormatString=“{0:dd/MM/yyyyy}”
解决这个问题
编辑查询用于获取日期
var regdatesList=from s in datahandler.students
select s
试试这个:
String myDate = myDateTime.ToString("dd/MM/yyyy");
您可以在控制器上执行此操作 您的CSHTML:
@Html.DropDownList("regdate", YourController.Get_List(), " ")
您的控制器:
public static IEnumerable<SelectListItem> Get_List()
{
var selectList = (from c in table
select new SelectListItem
{
Text = c.Date_In_Table.ToString("dd/MM/YYYY"),
Value = c.Date_In_Table
}
);
return selectList;
}
公共静态IEnumerable Get_List()
{
var selectList=(来自表中的c)
选择新的SelectListItem
{
Text=c.Date(在表中)to字符串(“dd/MM/YYYY”),
值=表中的c.Date\u
}
);
返回选择列表;
}
对区域性敏感,这意味着它将根据用户的区域性设置调整日期的显示。这意味着您的用户总是根据他们的文化获得日期的适当表示。如果你想确保每个人的日期都是dd/MM/yyyy
格式的,不管他们来自哪里,那么道格拉斯的答案是正确的
Text
属性表示将为列表中的每个项目显示的文本。Value
属性表示要与该项关联的值,因此,您可能希望将其保留为日期,或者将其设置为数据库中的其他适当字段。如何填充regdatesList
?在数据库上使用linq查询。该查询与此问题非常相关。它不起任何作用。基本上是选择查询。无论如何,我已经更新了问题,您是否将其作为属性添加到下拉列表中显示的属性中?
var regdatesList = datahandler.students.Select(d => new SelectListItem
{
Text = d.ToShortDateString(),
Value = d.ToShortDateString()
});