2010-05-20 7 views
0

.Net 프레임 워크를 사용하여 첫 번째 REST 웹 서비스를 작성하고 싶습니다. 저는 여러 사람들로부터 가장 열렬한 의견을 보았으며 Microsoft와는 다른 의견을 찾았습니다.새로운 .Net RESTful 웹 서비스에 대한 가장 현명한 선택은 무엇입니까?

내 웹 서비스는 매우 간단해야합니다. 버스 시간표 정보를 공개하고 싶습니다. 나는

은 무엇 반드시 즉 (가장 적절한 가장 쉬운, 가장 재미 또는 개인 것 (중지 경로) 내가

  • 요금은
  • 시간표입니다 걱정 될 자원을 파악 환경) WCF, ADO.NET 데이터 서비스 또는 ASP.Net MVC에서 사용하는 기술? 그는 web.config 파일을 사용하기 쉬운 것처럼 보이지만 우리는 현재 직장에서 WCF를 사용하고 I'n이 끝난 그것을 joyed하지

    디자인의이 고통이되지 않도록

+0

나는이 단계에서 .Net 3.5 프레임 워크를 사용하고 있음을 지적해야합니다. –

답변

2

WCF는 Microsoft 메시징 버스입니다. 분산 메시지 기반 서비스의 개발을 돕는 것을 목표로합니다.

WCF 데이터 서비스는 자동 생성 된 RESTful 인터페이스를 통해 데이터를 노출하는 데 도움이되는 WCF 위에 OData 프로토콜을 구현 한 것입니다.

ASP.NET MVC는 모델보기 컨트롤러 패턴을 기반으로 웹 응용 프로그램을 개발하는 데 도움이되는 프레임 워크입니다.

당신은 그러나, 세 가지 기술 중 하나를 사용하여 RESTful 서비스를 구현할 수 있습니다 : 당신이 당신의 서비스 인터페이스와 페이로드의 정의를 완벽하게 제어하려는 경우

  • 는 WCF를 선택합니다.
  • 실제 서비스 구현과 관련하여 최소한의 노력으로 OData를 통해 데이터를 노출해야하는 경우 WCF Data Services를 선택하십시오.
  • 웹 사이트 내에 잘 통합 된 간단한 RESTful 서비스를 원한다면 ASP.NET MVC를 선택하고 코드를 공유하고 다시 사용하십시오. ASP.NET 파이프 라인의 오버 헤드에 신경 쓰지 않아도됩니다.

대부분 데이터 기반으로 보이기 때문에 WCF 데이터 서비스를 사용하여 서비스를 구현하는 것이 좋습니다.

+0

감사합니다. 이것은 아주 완벽한 비교입니다. –

-2

ASP.NET MVC는 웹 응용 프로그램입니다 엉덩이와 하나의 거대한 서비스에 모든 것을 넣어 쉽습니다.

ADO.Net 데이터 서비스를 사용하지 않았으므로 말할 수 없습니다.

솔직히 말해서 Java 솔루션을 사용하는 대신 직장에서 Microsoft 생태계에서만 작업하고 작업을 변경하면 Microsoft를 사용하는 작업장은 피할 수 있습니다.

자바가 훨씬 좋고, 언어와 API가 더 깨끗하며 엔터프라이즈 급 응용 프로그램을위한 제 3 자 소프트웨어가 많이 있습니다.

+0

왜 투표가 실패 했습니까? – eaglestorm

+0

존경심을 가지고이 말은 나를 도와주지 않습니다. 질문은 * .Net * 프레임 워크가 가장 적합한 것입니다. 아니 일반적으로 어떤 프레임 워크. Java가 웹 서비스에 대한 훌륭한 옵션을 제공한다는 것은 의심의 여지가 없습니다. 그러나 이것은 내 기술이 아니며 완전히 다른 언어로 된 intracacies를 통해 작업 할 의향이 없습니다. –

+0

그럼 내 대답은 WCf가 나쁜 배치의 최신이므로 아마도 최고 일 것이다. – eaglestorm

5

단순하게하려면 일반 처리기 (.ashx) 만 사용하면됩니다.

복잡하다면 WCF를 원한다.

저는 개인적으로 몇 가지 WCF 프로젝트를 수행했으며 솔직히 기꺼이 다른 프로젝트를 수행하지 않을 것입니다. 가장 단순한 작업을 수행하는 데 엄청난 양의 코드가 필요합니다.

+1

보다 최신이며 더 이상 동의 할 수 없습니다. WCF와 Silverlight 프로젝트를 한 번 수행했기 때문에 모든 피 묻은 프록시 클래스에 문제가 생겨서 문제를 찾으려고 일주일이 지났습니다. 특별히 도움이되지 않는 비우호적 인 오류 메시지가 있기 때문에 특별히주의해야합니다! – vtortola

1

모든 요청을 처리하고 URL을 직접 구문 분석하는 HTTP 처리기를 만들어 직접 개발할 수도 있습니다. 조금 더 어렵고 시간이 많이 걸리지 만 더 많은 통제력을 갖습니다. 이 방법으로 URL을 처리하므로 URL이 생성되고 다른 세그먼트와 요청 스트림을 구문 분석하여 어떤 데이터를 XML의 출력 스트림으로 푸시해야하는지 알 수 있습니다.

WCF REST로 전달하고 잊어 버려야하는 프로젝트이지만, 자신이나 자신의 회사를위한 응용 프로그램이거나 간단하게 모든 것이 후드에서 어떻게 작동하는지보고 재미있게 배우고 싶다면 ... 행복한 마이크로 소프트의 "모든 것을 하나의 프레임 워크"라고 부르며 직접하십시오 : D

건배.

관련 문제