2009-02-02 7 views
0

이 질문에 대답하려고 인터넷에서 둘러 보았습니다. 그것은 일종의 복잡한 것 같다! HtmlHelper 및 다른 것들과 같은 다양한 주제의 모든 것을 생각해 냈습니다.MVC에서 ASP.Net 사용자 지정 컨트롤 처리

기본적으로. MVC에서 사용자 정의 컨트롤을 어떻게 사용할 수 있습니까? 어떤 것에도 눈살을 찌푸리게하는 것을 피하는 방식으로.

또한 MVC를 사용하면 간단한 논리를 페이지에 삽입해야합니까? 우리가 벗어나야 만하는 것이 아닌가?

업데이트 : 따라서 MVC가 포스트 백 이벤트 및 viewstate와 같이 사용하지 않는 것에 의존하는 컨트롤을 사용할 수없는 것 같습니다. 너 자신을 만들 수 있니? 물론 렌더링 만하는 컨트롤입니다.

+0

답변이 관련성이있는 경우 +1하지 않는 이유는 무엇입니까? – aleemb

답변

3

ASP.NET 컨트롤을 사용할 수 있습니까? 아마도. 컨트롤이 ViewState 또는 포스트 백 이벤트를 사용하지 않으면 아마 작동 할 것입니다. 예를 들어 LoginView 컨트롤은 정상적으로 작동합니다. Telerik은 ASP.NET MVC의 일부 기능을 지원합니다. 반면, 컨트롤에 ViewState 또는 포스트 백이 필요한 경우에는 작동하지 않습니다. 데이터 바인딩을 사용하는 컨트롤은 이상적이지 않습니다. 일반적으로 코드를 사용해야하기 때문입니다. 그러나 코드를 추가하면 작동합니다.

반면에 ASP.NET에 대한 지식이없는 컨트롤 (예 : jQuery UI 컨트롤)은 매우 잘 작동합니다.

아니요, 페이지에 논리를 넣지 않아도됩니다. 코드 숨김 페이지에도 두지 마십시오. 대신 use helper methods.

1

두 번째 질문과 관련하여 페이지는 뷰 로직이 있어야하는 곳입니다. 다른 논리는 컨트롤러 또는 모델에 있어야합니다.

사용자 정의 컨트롤의 의미가 확실하지 않습니다. 뷰 코드를 재사용하기 위해 partial을 통해 렌더링 된 ViewUserControl을 가질 수 있습니다. 웹 폼용으로 만들어진 제 3 부분 컨트롤에 대해 말하면, 적어도 잠시 동안은 작동하지 않을 가능성이 있습니다. 하지만 꼭 사용해야한다면, MVC를 동일한 사이트의 전통적인 웹 폼과 혼합 할 수있는 방법이 있습니다.

관련 문제