- - PR -
日付時刻の実装方法についての質問
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2006-10-05 17:22
とらです。
VisualStudio2005を使用してC#のWindowsアプリ(DBはOracle)を開発しています。 皆さんに質問なんですが、日付、時刻の入力やDBへの格納はどのようにされていますか? 結構、好みの問題も合って、まちまちなのでは無いかと感じているのですが、 私だけでしょうか? 以下は、私の例なのですが・・・ ・日付型(画面) 本当はDateTimePickerを使用したいところなのですが、null値を許容してくれない ので、たとえば、納期のように、設定しないこともあるような項目ですと、Enabled をfalseにしたところで、うっすらと日付が見えてしまいます。 どうも、この部分が気に入らなくて、画面入力はMaskedTextBoxを使用しています。 めんどくさいのと、カレンダーの選択とかをしようと思うと当然色々コードを 書く必要があるので、不本意では有りますが・・・ ・日付型(Oracleのデータ型) これは、Dateを使用しています。 特に、問題は感じていません。 ・日付型の変数 DBの項目には当然Null値が存在するため、Nullable<DateTime>を使用しています。 これも少々めんどくさいです。 ・時刻型(画面) 日付型と同様の理由で、MaskedTextBoxを使用しています。 また、DateTimePickerの場合FormatをTimeにすることによって、時刻っぽく 表示してくれるのですが、ドロップダウンするとカレンダーが出てきてしまう 所なども使わない理由のひとつです。 ・時刻型(Oracleのデータ型) ここは悩ましいところですが、6桁のNumber型を使用しています。 本来は、Date型の日付の日付部分を無視してとかするのが綺麗なようにも 思いますが、使用しない日付部分にも値をセットする必要があったりと あまりに煩雑なような気がしてNumber型にしています。 ・時刻型の変数 日付と同様にNullable<int>を使用しています。 実際には販売されているコントロールを使用したりするのが一般的なのかもしれない と思いながら、上記のような構成でコーディングしています。 皆さんの実装方法や、こうした方が良いんじゃないのと言うようなアドバイス等 ありましたら、よろしくお願いします。 |
|
投稿日時: 2006-10-05 17:49
DateTimePickerを使いたいなら、こんなのもいいかもしれません。
Japan.internet.com デベロッパー - Nullを許容するDateTimePickerコントロール http://japan.internet.com/developer/20050822/25.html |
|
投稿日時: 2006-10-10 22:08
チェックボックスをつける
_________________ |
1