WebForms에서 할 수 있었던 MVC로 뭔가를 할 수있는 방법을 찾고 있습니다.asp.net mvc가있는 뷰 페이지에서보기 컨트롤을 동적으로로드 중입니다. 가능한?
데이터를 채우기 위해 사용자가 수행해야하는 단계가 있습니다. 이전의 경우 웹 양식으로 설계된 '광고'사이트에 동물을 등록했습니다. 단순함을 위해 3 페이지가 있다고 말할 수 있습니다. 1 페이지는 드롭 다운 목록에 어떤 유형의 동물을 묻습니다. 이렇게하면 [개, 고양이, 양, 알파카, 말]이 표시됩니다. 페이지를 제출하면 데이터가 저장되고 두 번째 페이지로 전송됩니다. 두 번째 페이지에서 각 동물에 대한 정보를 제출해야합니다. 하나의 큰 페이지를 만들고 해당 동물에 대한 관련 컨트롤을 숨기거나 표시하거나 패널 컨트롤을 사용하여 데이터를 그룹화하는 대신 각 동물에 대한 사용자 컨트롤을 만드는 방법을 선택했습니다. 이 컨트롤은 Load() 및 Save()의 두 가지 메서드가 포함 된 IAnimalTemplate이라는 인터페이스를 상속합니다. 페이지 2에는 자리 표시 자 컨트롤 만 포함됩니다. 그런 다음 동물 유형을 가져 와서 동적으로 usercontrol을 자리 표시 자에로드합니다. IAnimalTemplate의 마술은 데이터를 저장하기 위해 제출 버튼을 클릭했을 때 실제로 적용되었습니다. 제출 단추는 uer 컨트롤 밖에 있었으므로 IAnimalTemplate에 사용자 정의 컨트롤을 캐스팅하고 Save 메서드를 호출 할 수있었습니다. 그것은 훌륭하게 작동했고 다른 동물을위한 수많은 템플릿/사용자 컨트롤을 매우 빠르게 만들고 데이터베이스에 조합을 저장 /로드 할 수있었습니다. 페이지에서 보내기 버튼을 사용하여 사용자 정의 컨트롤의 Save 메서드를 호출 한 다음 페이지에서 처리를 계속하고 페이지 3으로 전송할 수있었습니다.
이제는 MVC와 유사합니다. MVCFutures에서 Html.RenderAction을 살펴본 결과 http://blog.codeville.net/2008/10/14/partial-requests-in-aspnet-mvc/에있는 PartialRequests를 살펴 보았지만 이러한 작업을 수행 할 지 확실하지 않습니다. 이것들은 모델 데이터가 '(동물) 템플릿'사이에서 변경되기 때문에 이상적인 컨트롤 내에서 뷰 모델을 유지하는 것으로 보이지만 자신의 동작을 호출합니다. 물론 인터페이스에서 정의 할 수있는 Save 메서드를 호출 할 수는 있지만, 일단이 코드가 실행되면 뷰 컨트롤 외부에서 코드를 계속 실행할 수 있는지 확신 할 수 없습니다. 어쩌면 나는 이것에 대해 혼란 스러울 것입니다, 누군가가 솔루션 어딘가에 불을 밝힐 수 있기를 바랍니다. 어떤 아이디어가 필요합니까? 아니면 좀 더 확장해야합니까?
감사 로이드
어쩌면 나이지만, 그런 텍스트의 한 방울을 볼 수 있고 그것을 읽는 데 어려움이있다. 네가 그걸 깰 수 있니, 나도 몰라 ... 단락?! –
'당신이 그것을 깨뜨릴 수있는가요, 나는 모른다 ... 단락?!'. 나는 댄 (Dan)의 풍자에 대한 암시를 감지합니까? – lloydphillips