2013-02-28 7 views
0

새로운 Asp.Net MVC 개발을 시작하려고 최선의 선택을하고 싶습니다. 나는 웹에 관한 웹에서 많이 읽어 Asp.Net MVC 및 웹 API 및/또는 녹아웃 사용

  • 클라이언트 측 유효성 검사
  • 원격 검증
  • 보기 모델을 기반으로

    • 전망 : 내 이전 MVC 개발에서 내가 좋아하는 것들의 시리즈를 즐겼다 API 및 녹아웃. 나는 각각의 원칙을 이해하지만,이 요소 중 하나 (또는 ​​둘 다)를 사용하면 위에 열거 한 이점을 누릴 수 없을 것입니다.

      내 새로운 개발자는 주로 검색 결과를 기반으로하는 일부 목록이며, CRUD 작업을 수행합니다.

      내 새 프로젝트에서 웹 API 및/또는 녹아웃 사용에 대한 의견을 보내주십시오. 이것이 부분적으로 주관적인 선택이지만 지역 사회의 의견은 저에게 중요하다는 것을 압니다. 어쩌면 이미 이런 선택을해야만했을까요?

      의견을 보내 주셔서 감사합니다.

    답변

    0

    WebAPI와 녹아웃을 사용할 때 전혀 해가 없습니다. 녹아웃은 클라이언트 바인딩 라이브러리이고 WebAPI는 서비스 계층입니다.

    1. WebAPI에서 반환되는보기 모델을 계속 만들 수 있습니다.
    2. MVC 컨트롤러를 사용하여 뷰를 반환 할 수 있습니다.
    3. 녹아웃을 사용하여 클라이언트 측보기 모델 및 상호 작용을 관리 할 수 ​​있습니다.

    일반적인 접근법 (WebAPI 및 웹 API의 모델 바인딩을 많이 읽으십시오)이 가능합니다.

    1. MVC 프로젝트 -> 요청 된 동작을 기반으로보기를 제공하는 컨트롤러가 포함되어 있습니다.
    2. 웹 API - 비즈니스 로직을위한 서비스 계층.
    3. 뷰 모델을 정의하기 위해 모듈러 자바 스크립트 (requirejs, knockout 및 Javascript에서 드러난 모듈 패턴에 대한 읽기)를 사용하여 API에서 제공하는 뷰 모델로 생각하지 마십시오. 클라이언트 측 상호 작용, 계산 된 관찰 가능 항목도 정의됩니다. 등)
    4. 뷰 모델을 가져 와서 DOM에 바인딩하는 바인더 JS 모듈을 만듭니다.

    이 접근법을 수행 할 때 알아야 할 사항 1. 레이아웃 및 일부 부분에 바인딩이 있고 ko.applyBindings (new vm()); 오류가 표시됩니다. 대신 뷰 모델 데이터의 컨테이너 역할을 할 특정 div 또는 요소에 바인딩하십시오. 2. 웹 API 모델 바인더는 ASP.Net MVC 모델 바인딩과 다릅니다. 이것에 대해 읽어보십시오. 3. 특정 일을 작은 모듈로 자바 스크립트 파일을 분리하고 당신은 더 나은 일을 처리 할 수 ​​있습니다.

    자세한 내용은 ASP.Net을 사용하여 단일 페이지 응용 프로그램을 찾아보십시오. ASP.Net 및 VS2012 업데이트의 새로운 릴리스에는 SPA 템플릿과 knockout/WebAPI 및 Ember, Angular 등 기타 라이브러리 사용에 관한 많은 예제가 있습니다.

    희망이 있습니다.

    건배!