0

グリッドビューとがありSqlDataSourceます。

'のupdateステートメントで、SqlDataSource次のように列の文字列を日時に変換しようとしています。

Date = Convert(DateTime, @Date, 104) 
//this converts the string to mm.dd.yyyy .

のコードが見つかりませんmm.dd.yyyy hh:mm .

4

4 に答える 4

1

必要な形式でグリッドに表示するにはyourDate.ToString(yourFormat)、例を使用します。

DateTime.Today.ToString("mm.dd.yyyy")
于 2012-06-21T09:35:20.587 に答える
1

あなたの質問は、GridView と DataSource を使用していると述べています。

ソース データが SQL Server の DateTime 形式であると想定しています。
そうでない場合は、返すときに DateTime としてキャストします。

SQL Server 側で文字列に変換しようとしたり、DataTable を介してパスを実行したり、C# を使用して文字列に変換したりしないください。それはこれに対する間違ったアプローチです。

次のように、GridView の BoundField 列にDataFormatStringを設定するだけです。

BoundField bf = new BoundField();
bf.DataField = "xxxxx";//The field from your DataSource you are binding to.
bf.HeaderText = "yyyyy";//The column header text of your GridView.
bf.DataFormatString = "{0:MM.dd.yyyy hh:mm}";
gv.Columns.Add(bf);//Add the column to your GridView.
于 2012-06-21T23:02:54.757 に答える
0
CONVERT(varchar(17),Date,113)

これを使えば、2011 年 11 月 29 日 12:58 に取得できます

またはこれを使用します。

SELECT CONVERT(varchar(17),OrderDate,105)+' '+CONVERT(varchar(17),OrderDate,108) as Date FROM Orders

可も知れません ; 29-11-2011 12:58:48

于 2012-06-21T09:42:54.447 に答える
0
DateTime MyDateTime;

MyDateTime = new DateTime();
MyDateTime = DateTime.ParseExact(MyString, "MM.dd.yyyy hh:mm",
于 2012-06-21T09:40:33.537 に答える