ASP MVC/Sharp -Arachitecture 초보자 - 작업은 어떻게 도메인 엔티티를 입력으로 얻습니까?
-
07-07-2019 - |
문제
나는 한동안 그 커뮤니티의 변두리에있는 후 새로운 프로젝트를 위해 Sharp-Architection (및 ASP.NET MVC)을 시도하고 약간 혼란스러워합니다. 표준 엔티티 템플릿 생성에 따라 클래스 메시지를 만들었고 나열, 작성, 편집 및 삭제할 수 있습니다.
나는 편집 (메시지) 작업을보고 있으며 내 삶에 대해서는 입력 유형의 메시지를 어떻게 얻는 지 알아낼 수 없습니다. 양식을 제출하는 BTNSAVE를 클릭하십시오 메시지/편집? id = 1 그리고 어떻게됩니까? 이것은 어딘가에 정의 된 협약입니까? 그렇다면 어디?
해결책
기본 모델 바인더가 귀하를 위해 작업을 수행하고 있습니다. 그것은 컨트롤러 동작을 반영하고, 반사를 통해 찾은 Args의 새로운 유형의 객체를 시도한 다음, FormCollection을 읽고, Formcollection의 키를 새로 사용 된 객체의 적절한 값에 맞추기 위해 일부 구문 분석을 시도합니다.
나는 뷰에서 완전히 평평하지 않은 객체를 나타내는 것이 가능하기 때문에 구문 분석이라고 말하며, 기본 모델 바인더는 종종 올바르게 얻을 수 있습니다. 좋은 사용 사례가 없기 때문에이 작업을 수행하지는 않았지만 여러 객체를 전달하고 모델 바인더가 'get'을 가질 수 있습니다. 그렇지 않다면, 할 수있는 글을 쓰는 것은 너무 끔찍하지 않을 수 있습니다.
다른 팁
강력하게 입력 된 것을 사용하면 프레임 워크를 자동으로 볼 수 있다고 생각합니다. new
모든 양식 입력을 검사하고 약간의 반사를 사용하여 해당 속성을 채워서 컨트롤러 동작으로 전달합니다.