2

ユーザーが特定のメールアドレスを入力した登録を確認するにはどうすればよいですか?たとえば、登録フォームで次のメールアドレスのみを許可したい場合:

  • @ gmail.com
  • @ yahoo.com
  • @ live.com
4

4 に答える 4

2

このような:

[RegularExpression( @"@(gmail|yahoo|live)\.com$", ErrorMessage = "Invalid domain in email address. The domain must be gmail.com, yahoo.com or live.com")]
public string EmailAddress { get ; set ; }
于 2012-07-30T17:49:40.410 に答える
1

正規表現も必要ありません。split() 関数を使用して、"@" の後の電子メール アドレスの部分を取得し、許可されたプロバイダーのリストと照合することができます。

これだけでは、それが整形式の電子メール アドレスであることを保証するものではありません (正規表現が必要な場合があり、多少複雑なものもあります)。

于 2012-07-30T17:52:40.437 に答える
0

組み込みではありませんが、使用できます。から派生した[RegularExpression]カスタムを作成できます。EmailAttributeRegularExpressionAttribute

ここでは非常にうまく実装されています

次の正規表現を使用して、電子メールを確認できます。

^ [a-z0-9 _ \ +-] +(\。[a-z0-9 _ \ +-] +)@ [a-z0-9] +(\。[a-z0-9] +) \。 ([az] {2,4})$

これに加えて、電子メールアドレスの検証を可能にする属性を持つデータ注釈拡張機能を使用できます。[Email]

于 2012-07-30T17:50:29.113 に答える
0

RegularExpressionValidator コントロールと式を使用して、電子メール ドメインを探すことができます。まだサンプルがない場合は、 http://www.regexplib.comでサンプルを見つけることができます。

おそらく、同じサーバー側チェックを実行する CustomValidator も必要になるでしょう。ユーザーが Javascript を無効にすると、RegularExpressionValidator を回避できます。

于 2012-07-30T17:47:38.473 に答える