Как указывалось в теме, я хочу, чтобы выбранная в формате dd-mm-yyyy
дата в моем веб-приложении развивалась с использованием asp.net mvc framework - это дата, сохраненная в таблице в базе данных mysql.Вот «сценарий»:
В поле заполнения даты я создаю формат dd-mm-yyyy
и использую datetimepicker, чтобы помочь пользователю выбрать дату, но, похоже, mySQL использует mm-dd-yyyy при сохранении этих данных, поэтомукогда я выбираю 12 February 2012
(в поле заполнения отображается 12-02-2012
), оно будет сохранено как 2 December 2012
.Что я должен сделать, чтобы MySQL понял, что я хочу сохранить 12 февраля 2012 года, а не 2 декабря 2012 года?
Вот что я имею в методе контроллера:
Метод GET
public ActionResult AddAssignment()
{
var satqry = db.Satelites.Select(c => new
{
c.SateliteID,
c.SateliteName
});
var wmqry = db.JustUsers
.Select(u => new
{
u.name,
u.RealName
})
.OrderBy( u => u.RealName);
SateliteSchedule satsched = new SateliteSchedule();
satsched.Tanggal = DateTime.Now.Date;
ViewBag.SatList = new SelectList(satqry.AsEnumerable(), "SateliteID", "SateliteName");
ViewBag.WMList = new SelectList(wmqry.AsEnumerable(), "name", "RealName");
return View(satsched);
}
Метод HttpPost
[HttpPost]
public ActionResult AddAssignment(SateliteSchedule SatSched)
{
var txt = "";
if (ModelState.IsValid)
{
if (SatSched.ID == 0)
{
db.SateliteSchedules.Add(SatSched);
txt = "{0} has been added!";
}
else
{
db.Entry(SatSched).State = EntityState.Modified;
txt = "{0} has been modified!";
}
db.SaveChanges();
Utility utl = new Utility();
TempData["message"] = string.Format(txt, utl.GetSateliteName(SatSched.SateliteID));
return RedirectToAction("FormAssignment");
}
else
{
ViewBag.Message = "ModelState is not Valid!";
return View("ErrorView");
}
}
Представление:
@using (Html.BeginForm("AddAssignment", "admin", FormMethod.Post))
{
@Html.ValidationSummary(true)
@Html.HiddenFor(m => m.ID);
<table>
<tr>
<td>@Html.LabelFor(m => m.Tanggal)
</td>
<td>
@Html.EditorFor(m => m.Tanggal)
@Html.ValidationMessageFor(m => m.Tanggal)
</td>
</tr>
<tr>
<td>@Html.LabelFor(m => m.SateliteID)</td>
<td>
@Html.DropDownList("SateliteID", (IEnumerable<SelectListItem>)ViewBag.SatList, "--- Satelite ---")
@Html.ValidationMessageFor(m => m.SateliteID)
</td>
</tr>
<tr>
<td>@Html.LabelFor(m => m.WMOnDuty)</td>
<td>
@Html.DropDownList("WMOnDuty", (IEnumerable<SelectListItem>)ViewBag.WMList, "--- Worship Manager ---")
@Html.ValidationMessageFor(m => m.WMOnDuty)
</td>
</tr>
<tr>
<td>@Html.LabelFor(m => m.SMOnDuty)</td>
<td>@Html.EditorFor(m => m.SMOnDuty)</td>
</tr>
<tr>
<td>@Html.LabelFor(m => m.WLOnDuty)</td>
<td>@Html.EditorFor(m => m.WLOnDuty)</td>
</tr>
<tr>
<td>@Html.LabelFor(m => m.MLOnDuty)</td>
<td>@Html.EditorFor(m => m.MLOnDuty)</td>
</tr>
<tr>
<td>@Html.LabelFor(m => m.SoundMan)</td>
<td>@Html.EditorFor(m => m.SoundMan)</td>
</tr>
<tr>
<td valign=top>@Html.LabelFor(m => m.Note)</td>
<td>@Html.TextAreaFor(model => model.Note, new { @class = "memo-text" })</td>
</tr>
</table>
<div>
<input type="submit" value="Save" />
@Html.ActionLink("Kembali", "FormAssignment")
</div>
}