2011-08-22 8 views
0

큰 코드베이스로 기존 웹 사이트를 상속 받았습니다. 아약스 요청을 처리하기 위해 사이트에는 ajax.ashx이라는 파일이 하나만 있습니다. 파일 안에는 다음과 같은 switch 문이 있습니다.ajax.ashx 표준을 사용하고 있습니까?

switch (_json["m"]) 
{ 
    case "editDetails": 
     if (requestIsValid(context)) 
      _resp = AjaxMap.editDetailsPro(_json); 
     break; 

    case "addNewContact": 
     if (requestIsValid(context)) 
      _resp = AjaxMap.addNewContact(_json); 
     break; 

    // ... and so on. 
} 

약 50 가지 경우가 있습니다.

나에게 이것은 자연스러운 해결책이 아닙니다. 각 요청에 대해 유사한 요청을 처리 할 수있는 다른 처리기가있을 것입니다.

저는 웹 기술을 훨씬 전에 사용하지 않았습니다. 이것을하는 일반적인 방법입니까? 그렇다면 이점은 무엇입니까?

+0

적어도 접근법은 어떤 프레임 워크 (버전 포함)가 사용되는지에 달려 있습니다. C#이 ASP.NET의 일부 형식을 암시한다고 생각합니까? –

+0

맞습니다. 지금 태그를 추가했습니다. – Oliver

답변

1

완벽하게 정상입니다.

Ajax를 기본 WebForms 기능 (UpdatePanel 등)에서 사용하거나 WCF/WebService와 같은 프록시를 통해 사용할 때 일반적으로 발생하는 페이지 수명주기 오버 헤드를 저장합니다.

이러한 인프라가 쓸모 없다고 할 수는 없지만, 분명히 그렇지 않습니다. 그러나 요청하고 요청하는 유일한 목적으로 무언가를 수행하고 순 데이터 응답을 보내는 것이 좋습니다.

관련 문제