-3

ファイナライズボタンをクリックすると、現在の時刻を文字列変数に保存しようとしています。これにより、終了日を指定するメソッドを渡すことができます。

このコードを使用して機能すると思いました:

string endDate = null;
DateTime dt = DateTime.ParseExact(endDate, "ddMMyyyy", CultureInfo.InvariantCulture);
dt.ToString("yyyyMMdd");

ただし、プログラムを実行してコードをデバッグすると、このエラーが発生します。

文字列参照が文字列のインスタンスに設定されていません。パラメータ名: s

どんな助けでも大歓迎です。ありがとう。

4

2 に答える 2

4

編集: コメントで指摘されているように、endDate の null 値も ParseExact() メソッドに渡しています。あなたがここで何を達成しようとしているのか、私は混乱しています。ボタンをクリックしたときに現在の DateTime の文字列値を取得するだけの場合は、次のようにする必要があります。

string currentDate = DateTime.Now.ToString("yyyyMMdd");

あなたがやろうとしていることを見落としていない限り、文字列を解析する必要はまったくありません。

dt.ToString() 呼び出しの値を変数に割り当てていません。使ってみて

endDate = dt.ToString("yyyyMMdd");
于 2012-10-30T13:24:37.917 に答える
1

dt.ToString("yyyyMMdd");文字列を返します。文字列変数に割り当てる必要があります。dt を文字列に変更しません。

あなたが望んでいたのは次のとおりだと思います:

endDate = dt.ToString("yyyyMMdd");
于 2012-10-30T13:24:44.690 に答える