Convert.ToDateTime()
を上書きできますか?私は文字列がnulであるかどうかを100回以上確認する必要はなく、そうでなければDateTimeに変換します。この関数をオーバーライドしてヌルかどうかをチェックし、ヌルを返すことができます。それ以外の場合は変換してください。Convert.ToDateTime()を上書きできますか?
答えて
いいえ、静的メソッドを上書きすることはできません。戻り値の型は、それ自体が非NULL可能値型であるDateTime?
DateTime
のでなければならないこと
// TODO: Think of a better class name - this one sucks :)
public static class MoreConvert
{
public static DateTime? ToDateTimeOrNull(string text)
{
return text == null ? (DateTime?) null : Convert.ToDateTime(text);
}
}
注:しかし、あなたはあなた自身の静的メソッドを書くことができます。
Convert.ToDateTime
の代わりにDateTime.ParseExact
を使用することをおすすめします。私はそれほど寛容ではない、現在の文化特有のふるまいを大変気に入りました。それはデータがどこから来ているかによって異なります。形式を知っていますか?それはユーザーの文化や不変の文化にあるのだろうか? (?基本的には、ユーザが入力したテキスト、またはいくつかの機械生成フォーマットである)
チェックのために '.IsNullOrEmpty'を使う方が良いかもしれません。 – V4Vendetta
@ V4Vendetta:これは、望ましい動作に依存します.OPは、空の文字列をnullと同じ方法と見なすことを望んでいるとは言いませんでした。空の文字列はバグを示す可能性があります。 –
文字列の形式が正しいことがわかっている場合は、代わりにDateTime.Parse
を使用できます。
ToDateTime
をオーバーライドすることはできませんが、あなたはTryParse
を使用することができます。
bool valid = DateTime.TryParse("date string", out d);
- 1. 誰かがmyapp.meteor.comの配置を上書きできますか?
- 2. MySQLデータベースレベルでサーバーのSQLモードを上書きできますか?
- 3. PHPでは$ _REQUESTを上書きできますか?
- 4. webpackのrequire()が返す値を上書きできますか?
- 5. ワードプレスCSSを上書きしますか?
- 6. aws cloudwatch metric上書き/上書き
- 7. プログラムは別のプログラムのコマンドを上書きできますか?
- 8. モジュールBのモジュールのAメソッドを上書きできますか?
- 9. GreasemonkeyスクリプトはAdBlockフィルタを上書きできますか?
- 10. 親Webサイトのweb.configを上書きできますか?
- 11. DeviseController#find_messageをどのように上書きできますか?
- 12. C#Excel Data既存のファイルを上書きできますか?
- 13. 実行時にiPhoneのキーボードロケールを上書きできますか?
- 14. Magento Varienクラスを上書きできますか?
- 15. AIRインストール:以前のインストールを上書きできますか?
- 16. Apache Karafコマンドのヘルプオプションを上書きできますか?
- 17. git push.defaultは "dst"を上書きできますか?
- 18. サポートライブラリのレイアウトIDを上書きできますか?
- 19. キャプチャグループの上書きを停止できますか?
- 20. Bashスクリプトは上書きせずに書き込みますか?
- 21. Convert.ToDateTime:フォーマット
- 22. ファイルを上書きしてファイルを上書きする
- 23. htaccessファイルに上書きしますか?
- 24. PHP-FPMはerror_reportingを上書きできませんか?
- 25. Meteor absoluteUrlを上書きできませんか?
- 26. save_model django adminを上書きできませんか?
- 27. CamelのFileのデフォルトの上書きを上書きする
- 28. isinstance()を使用すると、タイプを上書きできます
- 29. XLからPPTで上書きする
- 30. アレイプッシュ上書き
あなたは 'DateTime.TryParseを使用しないことはできません'? – V4Vendetta