asp.net memebrlogin_control을 사용 중이고 "매개 변수 'username'에 쉼표가 없어야합니다. 매개 변수 이름 : username"예외가 발생합니다. 이 사용자 이름으로 emailID를 사용하고 있습니다.'username'매개 변수에 쉼표가 없어야합니다. 매개 변수 이름 : 사용자 이름 :
어떻게이 오류를 제거하고 전자 메일 주소의 유효성을 검사 할 수없는 문자 목록을 알고 싶습니다.
asp.net memebrlogin_control을 사용 중이고 "매개 변수 'username'에 쉼표가 없어야합니다. 매개 변수 이름 : username"예외가 발생합니다. 이 사용자 이름으로 emailID를 사용하고 있습니다.'username'매개 변수에 쉼표가 없어야합니다. 매개 변수 이름 : 사용자 이름 :
어떻게이 오류를 제거하고 전자 메일 주소의 유효성을 검사 할 수없는 문자 목록을 알고 싶습니다.
쉼표는 어떤 경우에도 이메일 주소로 허용되지 않습니다. 쉼표없이 사용자 이름을 입력하면 어떻게됩니까?
전달할 메소드에 전달하기 전에 정규식을 사용하여 사용자 이름 필드의 유효성을 검사 해보세요. 전체 이메일 주소 구문에 대한
읽기 RFC 2822 예를 들면 다음과 같습니다이다. BNF를 통해 작업하는 경우 비정상적인 경우 "@,@"@foo.bar
이 완벽하게 괜찮음을 알 수 있습니다. 당신이 local-part
및 domain
에 dot-atom
하지만 모든 것을 무시하면
addr-spec = local-part "@" domain
local-part = dot-atom/quoted-string/obs-local-part
domain = dot-atom/domain-literal/obs-domain
:
atext = ALPHA/DIGIT/; Any character except controls,
"!"/"#"/ ; SP, and specials.
"$"/"%"/ ; Used for atoms
"&"/"'"/
"*"/"+"/
"-"/"/"/
"="/"?"/
"^"/"_"/
"`"/"{"/
"|"/"}"/
"~"
atom = [CFWS] 1*atext [CFWS]
dot-atom = [CFWS] dot-atom-text [CFWS]
dot-atom-text = 1*atext *("." 1*atext)
및 3.4.1 : 당신이 요구하는지 규칙은, 그러나, 섹션 3.2.4에서 찾아 볼 수있다 규칙에 따라 일반 또는 정원 주소와 일치하게됩니다. 당신의 asp.net 컨트롤이 모든 유효한 RFC2822 주소를 받아들이지 않을 가능성이 있으므로, 실제로 그 문서를 확인해야합니다.
"% < 16 진 코드 >"과 같은 방법으로 유효한 (또는없는) 전자 메일 주소를 컨트롤에서 받아 들일 수있는 사용자 이름 인수로 변환 할 수 있습니다.
(오라일리에서 정규 표현식을 마스터 메일 주소에 대한 거대한 한 페이지 정규식 (대부분 올바른)를 가지고하는 데 사용하지만, 3 편에서 사라 졌어요.) 쉼표없이
이름 나를 위해 잘 작동합니다 . 전자 메일의 유효성을 검사 할 때 허용되지 않아야하는 모든 문자를 알고 싶습니다. – user255818