Ahsan Mirza Ответов: 5

Как получить часть времени из DateTime?


Привет,

У меня есть проблема,я хочу использовать часть времени из моего столбца SQL Date Time.

Пожалуйста, кто-нибудь, пожалуйста, hep me!

Спасибо

5 Ответов

Рейтинг:
2

V.

Ваши спецификации не ясны на 100%, но объект C# DateTime имеет Date собственность и Time собственность. Если вы можете использовать объект datetime в SQL Server в качестве типа столбца, просто прочитайте его в объекте DateTime и получите его через свойство Time или метод ToString, например. (если текста достаточно).

если ваш тип данных SQL Server может содержать только время, я почти уверен, что он примет DateTime.Объект свойства Time при передаче его в качестве параметра.

Надеюсь, это поможет.


Sergey Alexandrovich Kryukov

Нет, нет никакого свойства времени - отсюда вопрос.
--СА

Рейтинг:
2

DotNet WeblineIndia

Привет, в C#нет объекта времени.
Но есть и другой способ выиграть время
с помощью метода разделения.

Итак, для этого сначала вы должны преобразовать значение
в строке, а затем разделить это значение, чтобы получить значение времени.

DateTime dDate = DateTime.Now;
string[] sDate = dDate.ToString().Split(' ');
Console.WriteLine(sDate[1]);


В приведенном выше коде вы просто получите время, но если вы хотите иметь время с AM и PM, то вы можете объединить строку следующим образом
DateTime dDate = DateTime.Now;
string[] sDate = dDate.ToString().Split(' ');

string stime = sDate[1];
string sampm = sDate[2];
stime = stime + " " + sampm;
Console.WriteLine(stime);
Console.ReadLine();


Рейтинг:
1

Christian Graus

Ваш код не имеет смысла. Делает Ряды.Добавить еще что-нибудь взамен ? Что вы хотите добавить ? Вы можете использовать DatePart в БД, чтобы получить только время. Или просто используйте часть времени в возвращаемом объекте. В C#нет объекта времени. Я сомневаюсь, что он есть в SQL. Так что же вы подразумеваете под "частью использования времени"? Вы хотите игнорировать дату в запросе ? используйте DatePart только для сравнения времени.


Ahsan Mirza

да, я хочу игнорировать дату!

Рейтинг:
1

eyanson

новую дату(дата.Сейчас.Клещи - Дата.Сейчас.Дата.Галочки)

Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Dim SampleDate As Date = Date.Now

        'Substract entire date to the date component of SampleDate
        Dim OnlyHour As Date = New Date(SampleDate.Ticks - SampleDate.Date.Ticks)

        MessageBox.Show(OnlyHour.ToString)
    End Sub
End Class


Результат показывает только временную составляющую:
"01/01/0001 08: 53: 40 утра."


CHill60

Помимо того что ваш ответ неполон он опоздал более чем на 2 года

eyanson

Ответ правильный. Это работает и работает хорошо. Если вы не хотите служить, вы будете служить другому.

CHill60

Я понятия не имею, что значит "если ты не будешь служить, ты будешь служить другому". Однако давать оператору ответ, кратный 100 наносекундам, без каких-либо дальнейших объяснений на самом деле не очень полезно... тем более что этому вопросу уже более 2 лет. Ключевые фразы, которые я использовал здесь, - "более 2 лет "и"не очень полезно".

Рейтинг:
0

Ger Hayden

Вероятно, самый простой способ (но он не выиграет ни одного конкурса красоты кода) - это пройти через значение DateTime в вашем коде и удалить часть даты.

Видеть http://www.csharp-examples.net/string-format-datetime/