12

次のコードを使用して、ASP.NET MVC 3 アプリケーション内のリストにオブジェクトを追加していますが、オブジェクトのプロパティの 1 つが原因で問題が発生しています。

ls.Add(new UserRoleModel { UserRoleId = 1, UserName = "Paul", InsertDate = new DateTime(05, 24, 2012),InsertProgram="sqlplus",InsertUser="sp22",Role="Implementation Co-corindator"});

これはビルドされますが、関連するページに移動すると、次のタイプの例外が発生します。

Exception Details: System.ArgumentOutOfRangeException: Year, Month, and Day parameters describe an un-representable DateTime.

月の 0 を削除しようとしましたが、同じ例外が発生します。

4

6 に答える 6

33

DateTime 呼び出しているコンストラクターは、年、月、日の順序でパラメーターを受け入れます。

月、日、年の順序でそれらを提供しているため、意味のない値を割り当てようとしてしまいます。ドキュメントには、許可されている値と、「日」の値に 2012 を渡すとどうなるかが明確に記載されています。

于 2012-06-28T14:13:45.647 に答える
8

私はちょうどこれに遭遇しました.私の問題は、2月に日付を作成していたことでした. 私は次のことをしようとしました...

new Date(2013, 2, 30)

2 月 30 日がないため、日付の作成に失敗しました。に変えた時

new Date(2013, 2, 28)

それはうまくいきました。

于 2013-02-20T16:26:31.707 に答える
2

InsertDate作成日時を意味する場合は、次のように使用できます

DateTime InsertDate  = DateTime.Now;
于 2012-06-28T14:19:50.490 に答える
1

無効な日時を使用しています。月のように、31 日以上 13,14 日を経過している可能性があります

または問題を引き起こしているようなもの。

于 2013-12-24T13:27:51.147 に答える
0

私が解決したのと同じ例外:

DateTimePicker1.Value = DateSerial(Year(Now), Month(Now) + 1, 1)
于 2021-01-02T06:16:18.177 に答える