string date = "23/12/2017";
DateTime dt = DateTime.ParseExact(
date,
"dd/MM/yyyy hh:mm:ss tt",
CultureInfo.InvariantCulture);
но в dt
это дает мне 23/12/2017 00:00:00
какой подход я должен использовать для преобразования этой строки в dd/mm/yyyy
с текущим временем, как если бы я запускал этот код в 03:20 PM
, я хочу "23/12/2017 03:20:00 PM"
в моем объекте dt
У меня есть действие ASP.NET MVC, которое принимает дату в виде строки и сохраняет ее в таблице базы данных в поле типа DATE.
Я сохраняю в нем свой объект dt. я хочу сохранить в нем свою дату как DD/MM/YYYY, поэтому мне не нужно менять ее порядок. Прямо сейчас объект dt находится в формате ММ/ДД/ГГГГ. поэтому, когда я изучаю данные своей таблицы, он показывает мне данные (даты) в порядке ММ/ДД/ГГГГ. я хочу заказать свой объект dt как DD/MM/YYYY, чтобы он сохранялся в таблице как DD/MM/YYYY, поэтому всякий раз, когда я получаю значение из своей таблицы, мне не нужно менять порядок
/// asp.net Entities link to create connection with DataBase
private DatabaseEntities db = new DatabaseEntities();
//// Method to Save date in database
public ActionResult SaveDate(string date){
var DateTableObject = new Date();
DateTime dt = DateTime.ParseExact(date, "dd/MM/yyyy hh:mm:ss tt", CultureInfo.InvariantCulture).Add(DateTime.Now.TimeOfDay);
DateTableObject.Date = dt;
db.Date.add(DateTableObject);
db.SaveChanges();
}
//// Model class
public class Date{
public DateTime Date {set; get;}
}
/// Method to get dates
public ActionResult GetDates(){
return View(db.Date.tolist());
}
В представлении я получаю даты в формате ММ/ДД/ГГГГ
DateTime.Parse("23/12/2017")
напрямую и получить дату в декабре. У моего SQL Server локаль для США, и у меня не возникает вообще никаких проблем. Возможно, вы сохраняете значения, используя динамический sql вместо параметризованных запросов? 18.10.2017SaveDate(DateTime date)
и настаивайте на том, чтобы клиент использовал правильный формат. ASP.NET MVC может отлично анализировать параметры даты. Проверьте этот аналогичный вопрос stackoverflow.com/questions/1224201/ 18.10.2017DateTime
, — это персидский календарь. Все остальное - ошибка в коде 18.10.2017