2011-03-23 3 views
1

그래서 기본적으로 여기에서 아이디어를 찾고 있습니다. 나는 전에 이런 일을 정말로 한 번도 해본 적이 없으며, 나는 그 순간에 다소 혼란 스럽다. 이것은 나와 함께 할 수있는 긴 설명일지도 모릅니다. 그리고 당신의 전문가 중 일부는 나에게 무언가를 줄 수 있습니다.다른 경로를 통해 모델을 복제하는 방법에 대한 아이디어 필요

두 개의 MVC2 앱이 있습니다. 둘 다 동일한 코드 기반에서 실행되지만 두 개의 서로 다른 URL (컨트롤러)에 의해 액세스됩니다. 그래서 지금

http://localhost/Extranet/mvc/Indications.cfc/home 

로 이동하여

http://localhost/Extranet/mvc/StandardDeviationCones.cfc/mobile 

및 다른 이동하여 하나의 액세스, 두 번째 링크는 잠시 동안 개발 된 응용 프로그램이 있습니다. 홈 페이지를로드하고, 마법사를 통해 진행하고, 양식에 도달하고, 많은 정보를 채우는 등 코드가 업데이트되고 백그라운드에서 Model을 채우는 정보 묶음으로 채 웁니다. 프런트 엔드에서 선택하는 다양한 선택 사항. 드롭 다운에서 선택 항목을 선택하거나 텍스트 상자에 내용을 입력하면 구체적인 방식으로 Model 업데이트, 객체 추가 등의 전체 이벤트 프레임 워크가 구축됩니다.

모델이 정확하게 입력 된 후에 만 ​​우리가 가지고있는 특정 Value() 메서드를 호출 할 수 있습니다. 저는 손으로 전달 된 객체의 정확한 복제본을 만들려고했습니다. 그리고 실제로해야 할 일이 6 시간 정도 걸렸지 만, 어떤 속성이 어딘가에 있어야하는 방식으로 설정되지 않았기 때문에 여전히 가치가 없었습니다. . 이걸 만들어내는 엄청난 양의 것들이있어서을 놓치기 쉽습니다. 이제

는, 여기에 목표는 Mobile, 새로운 응용 프로그램의 버튼을 누르면, 그리고 배경과 Value()을에 기본 Model 상태를 만들도록 할 수있다, 그래서 우리는 결과에서 다시 하나 개의 속성을 얻을 수 있으며, 휴대폰 플랫폼에 표시하십시오. 근본적으로 믿을 수 없을 정도로 실물을 버린 버전입니다. 문제는 이전 앱의 마법사를 통해 객체의 기본 상태를 만들 수 있지만 수작업으로 만들 수있는 방법이 없다는 것입니다. 왜냐하면 수 백 가지의 속성이 들어 있기 때문에 모든 설정이 필요하기 때문입니다. 프런트 엔드에서 이벤트 프레임 워크를 사용하면 실제 전화에 Session 정보를 많이 사용하여 모든 전화가 트리거되기 때문에 "자동 설정이 기본 모델"이라고 말할 수있는 방법이 없습니다. 그들과 함께.

분명히 내가 마법사를 통해 양식을 채우고 '값'을 클릭 한 다음 코드를 단계별로 실행하여 가치를 얻고, 전달 된 객체를 살펴보고, 기본적으로 그것을 복사 한 다음 속성에 의해 속성을 직접 손으로 새 속성을 작성하지만, 이는 다소 우스운 것 같습니다.

내가 어떻게이 작업을 수행 할 수 있는지에 대한 아이디어가 있습니까?

고맙습니다.

답변

1

그래서 기본적으로 몇 가지 단계로 생성되는 거대한 모델이 있습니다. 그리고 당신은 하드 코드를 복사하지 않고 다른 mvc app에서 그 모델을 얻고 싶습니다.

이 경우 조사 할 내용은 기본 앱의 단계를 '에뮬레이트/가짜'로 작성한 다음이 모델을 보내는 방법입니다.

짧은 말로하면 모든 조치를 1 액션으로 병합 한 다음 모바일 앱으로 반환합니다. XML serializer 또는 JSON 또는 웹 서비스를 사용하여이 작업을 수행 할 수 있습니다.그러면 모바일 앱은 기본 앱을 요청할 것입니다. 기본 앱은이 기본 모델을 만들기위한 작업 만 수행합니다.이 기본 모델은 주 앱에서 그렇게 힘들지 않아야합니다.

또한이 방법을 사용하면 모델이 변경 될 때 앱을 유지 관리 할 수 ​​있습니다. 당신은 몇 가지 정말 끔찍한 코드 : 모두 애플 리케이션 이후

을 상속 것 같은

+0

요청한 내용은 무엇입니까? 나는 전에 mvc 응용 프로그램을 교차시키지 않았다. 또한 많은 세션 정보를 사용하여 모델을 작성하기 때문에 이전 응용 프로그램을 사용하지 않고 로그인하지 않고도 위 단계를 가짜로 만들 수는 없습니다. – slandau

+0

나는 당신이 스스로에게 물어 봐야 할 첫 번째 일은 다음과 같다. 메인 앱에 기본 모델을 만들 수 있는가? 그게 훨씬 쉬울까요? – Stefanvds

+0

글쎄 우리는 실제로 사용자가 단계를 거치고 이전 앱을 사용하여 빌드해야하는 기존 앱의 기본 모델 "프로세스"를 가지고 있지만 코드에서 직접 발생할 수는 없습니다. (내가 아는 설계 결함) – slandau

0

는 같은 코드 기반에서 실행되는 소리하는 방법을 수동으로 필요한 조치 방법을 마법사에 포함 된 MVC 컨트롤러를 작성하고 호출에 대한 그 Model에 대한 기본 상태를 만들어야합니까?

세션 및 HTTP 컨텍스트 개체를 조롱해야하지만 어렵습니다. 모델을 직접 조롱하는 것보다 쉽습니다.

0

System.Runtime.Serialization.Formatters.Binary.BinaryFormatter 을 사용하면 마법사가 모바일 응용 프로그램에서 모델을 deserialize 한 후에 모델을 직렬화 할 수 있습니다.

관련 문제