У меня есть несколько пользовательских элементов управления, которые я сделал в wpf и которые управляются двумя датчиками. Один инструмент выбора контролирует начало диапазона дат, а другой - конец диапазона дат.
У меня были проблемы со свойством datepicker.selecteddate, которое давало мне время вместе с датой, и тогда мои результаты sql не были все там, потому что переданное во времени значение отфильтровывало многие мои результаты. В итоге я обнаружил, что, если я отформатировал это время до полуночи, все мои результаты были там, но каждый раз, когда я выбирал новый выбор в указателе даты, он сбрасывал форматированное время.
После некоторого тестирования я обнаружил, что могу просто передать значение текстового свойства datepicker в качестве параметра. Значение этого свойства является строковым типом и устанавливается равным значению даты текущей выбранной даты (например, 14.03.2012 5:00:32 AM - выбранная дата, тогда как «3/14/2012» - текстовое значение).
Пока что, к удивлению, это, кажется, возвращает все мои результаты, которые я хотел.
Мне было интересно, почему это на самом деле работает (это потому, что литеральный формат 'mdy' поддерживается и используется по умолчанию?), И есть ли какие-либо негативные недостатки в том, что я делаю? Я знаю много раз только потому, что что-то работает, не означает, что вы должны использовать это в производстве. Я делюсь таблицами с другими, или я просто конвертирую поля и параметры даты и времени в дату, и все будет готово.
Надеюсь, мой вопрос имеет смысл. Иногда они этого не делают. Если есть вопросы, оставляйте комментарии, и я буду вмешиваться.