Проект на ASP.net MVC, хочу привязать к полю текущую дату,реализую через контроллер, как можно привести datetime C# {dd.mm.yyyy} к формату ms sql datetime{yyyy-mm-dd} ?
Если используется доступ к базе через обьёкты, то можно сделать обработчик даты через гетер-сетер свойства:
public string dateorder {
get { return (_dateorder == DateTime.MinValue) ? "" : _dateorder.ToString("dd.MM.yyyy"); }
set {
_dateorder = (value == string.Empty) ? DateTime.MinValue :
DateTime.ParseExact(value, "dd.MM.yyyy", CultureInfo.InvariantCulture);
} }
Вместо ParseExact можно использовать TryParseExact (это было бы лучше). У меня просто вся форма обвёрнута в try-catch.
На счёт MSSQL - поля в формат yyyy-mm-dd СУБД конвертирует в случае только если тип данных кастится средствами MSSQL и формат даты у базы никто не менял, формат можно поменять средствами MSSQL на другой https://msdn.microsoft.com/ru-ru/library/ms189491%28v=sql.120%29.aspx. Поэтому настоятельно рекомендую передавать даты в формате DateTime, что сделает ваш код более переносимым и устойчивым. Для этого вам прийдётся всего лишь запись делать параметрическим способом, что я так же очень рекомендую делать.
Вариант 2. На языке mssql можно так же явно указать формат это так
SELECT CONVERT(VarChar, GETDATE(), 104)
SELECT CONVERT(datetime, '31.01.2016', 104)
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Есть контроллер, в котором определен метод GetAllPurchaseList, при переходе на него, система ищет представление с именем GetAllPurchaseListcshtml
Допустим у меня есть инициализированная строка string sЯвляются ли следующие операторы эквивалентными в плане поведения? Генерируется ли разный...
При создании домена приложения и подгрузке dll возникает исключение FileNotFoundExcption с текстом Не удалось загрузить файл или сборку "MyLibrary, Version=10