2009-07-05 7 views
0

ASP.NET MVC 프레임 워크에서 모델의 상수 값을 유지하는 방법이 궁금합니다. 뷰를 통해 모델에 무언가를 추가 할 때처럼. 컨트롤러의 액션으로 돌아가지만 모델은 어디에 보관합니까? 컨트롤러에 비공개입니까? 그렇지 않으면 모델에서 하나의 항목을 추가/삭제하기 위해 많은 양의 데이터를 전달하고 있기 때문에보기에서 컨트롤러로 앞뒤로 전달됩니다.MVC에서 모델을 업데이트하는 방법

또한 이것을 보여주는 작은 예도 있습니까?

감사합니다.

+0

참조 할 프레임 워크를 지정해야합니다. Ruby on Rails, ASP.Net MVC, Grails, Zend 등 많은 MVC 기반 프레임 워크가 있습니다. –

답변

0

당신은 무엇을 말하고 있습니까? Ruby on Rails의 ORM과 같은 객체에로드 된 데이터베이스 테이블을 의미합니까? 일반적으로 '모델'은 데이터베이스의 객체에 데이터를로드하는 일련의 인터페이스 또는 도메인 객체입니다.

구체적으로 작성하십시오. 많은 MVC 프레임 워크와 많은 다른 종류의 '모델'이 있습니다

+0

asp.net MVC에 대해 이야기하고 있습니다.모델이 클래스이거나 데이터베이스 자료와 관련 될 수있는 곳. 컨트롤러는 렌더링 할 뷰에 모델을 전달할 수 있지만 내 질문은 모델 변경 내용을 어떻게 추적하는지입니다. –

0

"Professional ASP.NET MVC 1.0"의 NerdDinner와 같은 ASP.NET MVC 학습을 확인해야한다고 생각합니다. Scott Guthrie는 자신의 사이트에 html version of the tutorial를 올렸습니다. 이 튜토리얼에서 빌드하는 사이트는 매우 간단하며 ASP.NET MVC의 훌륭한 소개입니다 (제 생각에는).

good tutorials on the ASP.NET site도 있습니다.

희망 사항은 .NET MVC를 사용하는 데 도움이되기 때문에 사용하기 좋은 프레임 워크입니다!

+0

와우, 왜 downvote? 질문은 실제 답변에 너무 일반적이었습니다. – mkchandler

0

모델을 페이지로 전달하면 컨트롤러에서 UpdateModel (모델 이름)을 사용할 수 있습니다.

모델의 각 구성원은 getter 및 setter가있는 속성이어야합니다.

상태에서 벗어난 값을 유지해야하는 경우 숨겨진 필드에 데이터를 저장할 수 있습니다.

UpdateModel을 사용하는 데 문제가 있으면 컨트롤러에서 다음을 사용할 수 있습니다.

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult MyAction(int? id, FormCollection collection) 
{ 
    string commentText = collection["myFieldName"]; 
} 

이것은 일반적으로 모델에서 값을 가져옵니다.

희망 사항입니다.

0

모델을 데이터 전송 객체로 생각하십시오. 목록에서 페이지 만 표시하거나 편집하면 데이터 레이어에서 단일 개체 또는 개체 목록으로 가져옵니다. 컨트롤러는 그것을 뷰에 전달하고 표시됩니다.

삽입의 경우 새 데이터 전송 객체가 게시시 인스턴스화되고 게시 된 값으로 업데이트됩니다. 그런 다음 지속성을 위해 데이터 레이어로 다시 전송됩니다.

편집의 경우 HTTP GET 요청의 데이터 계층에서 가져온 것으로 HTML 양식을 미리 채우는 데 사용됩니다. 그런 다음 포스트 백에서 데이터 전송 객체가 게시 된 값으로 업데이트되고 지속성을 위해 데이터 레이어로 다시 전송됩니다.

확실히 체크 아웃 NerdDinner 또는 Stephen Walther의 샘플.

관련 문제