문제

현재 ASP.NET 앱에서 QueryStrings를 검증하기 위해 사용할 수있는 라이브러리가 있습니까?

편집 ~ regex를 사용하여 문자열, 숫자 만, 길이 x가있는 문자열과 같은 패턴을 찾습니다.

감사

도움이 되었습니까?

해결책

도서관에 대해 모르지만 쿼리 스트링이 있는지 확인하는 데 사용할 수 있습니다.

if (!String.IsNullOrEmpty(Request.Querystring["foo"]))
{
   // check further
}
else
{
   // not there, do something else
}

Reglar 표현식을 사용하여 추가 검증을 원한다면 문자열을 수락하고 부울을 반환하는 클래스를 만들 수 있습니다.

public static Boolean IsValid(String s)
{
    const String sRegEx = @"regex here";

    Regex oRegEx = new Regex(sRegEx , RegexOptions.IgnoreCase | RegexOptions.Multiline | RegexOptions.IgnorePatternWhitespace | RegexOptions.Compiled);
    MatchCollection oMatches = oRegEx.Matches(s);

    return (oMatches.Count > 0) ? true : false;
}

Regluar Expressions를 구축하는 데 도움이되는 무료 무료 프로그램입니다. Expresso

다른 팁

이런 종류의 가장 좋은 방법은 아마도 정규식을 사용하여 원하는 조건을 확인하는 것입니다.

실제 시나리오에서는 프레젠테이션에서 검증을 분리하는 것이 좋지만 예제를 위해서는 다음과 같습니다.

  if (!string.IsNullOrEmpty(Request.QueryString["Variable"]))
    {
        string s = Request.QueryString["Variable"];

        Regex regularExpression = new Regex("Put your regex here");

        if (regularExpression.IsMatch(s))
        {
            // Do what you want.
        }
    }

쿼리 문자열을 해당 부품으로 나누는 것에 대해 묻는 것을 의미합니까? ASP.NET은 이미 당신을 위해 그렇게합니다. request.querystring 컬렉션을 통해 개별 매개 변수에 액세스 할 수 있습니다.

쿼리 문자열 :? fruit = apple & socks = 흰색

request.querystring [ "Fruit"]는 "Apple"을 제공하고 request.querystring [ "Socks"]는 "흰색"을 제공합니다.

요청이 들어올 때 쿼리 문자열을 검증하는 것에 대해 이야기하고 있다면 .NET 프레임 워크가 이미이를 수행합니다. Page에는 기본적으로 true validateRequest라는 속성이 있으며 쿼리 문자열에 유효하지 않은 것은 오류가 발생하지 않고 오류가 발생하지 않습니다 (쿼리 문자열이 처음으로 코드에 액세스 할 때).

쿼리 문자열을 검증하는 것에 대해 이야기하고 있다면 데이터 또는 무언가로 이 MSDN MAG 기사 당신을 도울 수 있습니다.

편집 : 데이터 검증에 대해 더 많은 것을 묻는 것 같습니다. 위에서 연결 한 MSDN 기사에서 좋은 것들을 찾아야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top