水無月ばけらのえび日記

bakera.jp > 水無月ばけらのえび日記 > 2008年のえび日記 > 2008年9月 > 2008年9月15日(月曜日)

2008年9月15日(月曜日)

RFC違反のメールアドレスは無理です!

C# で以下のようなコードを実行しようとすると、

using System.Net.Mail;
...
MailAddress m = new MailAddress("foo.@example.com");

こんな感じになります。

ハンドルされていない例外: System.FormatException: 指定された文字列は、電子メール アドレスに必要な形式ではありません。
場所 System.Net.Mime.MailBnfHelper.ReadMailAddress(String data, Int32& offset, String& displayName)
場所 System.Net.Mail.MailAddress.ParseValue(String address)
場所 System.Net.Mail.MailAddress..ctor(String address, String displayName, Encoding displayNameEncoding)
場所 System.Net.Mail.MailAddress..ctor(String address)

メールアドレスの変なところに "." が入っているので不正なのですが、実際こういうメールアドレスがあるから困ります。これを受け入れられるようにするのは大変なので、今回はこのようなメールアドレスは受け付けない方向にしてしまいますが……そうは言っていられない場合も多いのでしょうね。

NTTドコモの人は全員、RFC2822を100回音読すること。

※あと、できればParseValueメソッドをふつうに使えるようにしてほしかったなぁ。

関連する話題: C# / プログラミング / RFC / 電子メール

最近の日記

関わった本など