2013-06-14 1 views
0

RegularExpressionValidator를 사용하여 ASP.Net 파일 업로드 컨트롤을 통해 업로드 된 파일 확장명이 '.txt'인지 아닌지 클라이언트 측에서 확인합니다.FileUpload 컨트롤의 파일 확장명을 검사하기위한 ASP.Net의 RegularExpressionValidator

.txt 파일을 업로드하더라도 유효성 검사기는 오류 메시지를 계속 표시합니다.

내 코드는 다음과 같습니다. txt 파일에도 오류가 발생하는 RegularExpressionValidator에 어떤 문제가 있습니까?

<asp:FileUpload ID="FileUpload1" CssClass="formfield" runat="server" EnableViewState="true" /> 

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" 
runat="server" ErrorMessage="* Only Files with txt extensions are allowed!" 
ValidationExpression="^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w].*)) 
+(.txt)$" ControlToValidate="FileUpload1" SetFocusOnError="true" 
Display="Dynamic"></asp:RegularExpressionValidator> 
+0

정규식이 올바르게 작동하는지 확인 했습니까? .txt 파일 이름으로 테스트 해 보시고 올바르게 실행되는지 확인하십시오. 나는 전형적으로 http://regexhero.net/tester/ –

+0

개리슨 (Garrison)을 사용한다. 나는 이것에 대한 나의 새로운 글에서 설명한대로 대답을 찾았다. 정규식 표현식을 aspx 파일의 같은 줄에 넣었어야합니다. – Sunil

답변

1

내 HTML에서 RegularExpressionValidator의 문제가 발견되었습니다.

나는 두 줄 영문 파일에에서 ValidationExpression 분할에 대한 값을했다. aspx 파일의 한 줄에 완전한 식을 넣자 마자 예상대로 작동하기 시작했습니다.

그래서 ASP.Net에서 RegularExpressionValidator를 사용할 때 정규식을 여러 줄로 나누지 않는 것이 좋습니다.

+0

좋은 찾기! ASPX 마크 업에서 따옴표 안에 포함 된 내용을 여러 줄로 나누지 말 것을 제안합니다. 그렇게 자주하면 의도하지 않은 많은 결과가 발생할 수 있습니다. –

관련 문제