פרוייקט ראשון ב-MVC

가장 먼저 살펴볼 것은 MVC에서 간단한 프로젝트를 여는 방법입니다 그것을 보는 것이 왜 중요한가? 처음에는 시스템에 어떤 구성 요소가 있는지 확인하려면 HELLO WORLD 프로젝트와 같은 것이 간단하기 때문에 VISUAL STUDIO를 열어 보겠습니다

우리는 FILE NEW PROJECT로갑니다 여기서 우리는 ASPNET MVC 4 WEB APPLICATION을 선택합니다 우리가 최신 FAMEWORK에 있다는 것을 아는 것이 중요합니다 서버에서이 FRAMEWORK을 사용할 수 없다면 매번해야 할 일입니다

폴더에 저장합시다 C 드라이브로 가자 C 드라이브에서 프로젝트 폴더를 엽니 다 이 동영상 중 솔루션에 제공되었습니다 그리고 그 프로젝트 자체에 주어졌습니다

지금 우리가 보는 것은 MVC 프로젝트가 우리에게주는 첫 번째 형식입니다 여기에 숫자가 있습니다 MVC 내의 프로젝트 그가 가장 단순하기 때문에 우리는 비어있는 것을 열어 그와 함께 시작할 것입니다 여기서 우리는 우리가 VIEW ENGINE VIEW ENGINE은 VIEW 자체가 그것은 우리가 기록한 정보를 그것이 사용하는 엔진으로 변환합니다 HTML 생성 MVC가 ASPX 엔진을 처음 시작했을 때 ASP DotNet 엔진이었습니다 코드가 서버에서 실행되었지만 코드가 동일한보기 HTML 페이지의 페이지에있는 것처럼 작성할 수 있습니다

어떤 시점에서 그들은 밖으로 나갔다 훨씬 간단하고 사용하기 쉬운 RAIZOR라는 언어 그리고 그것으로 우리는이 코스를 사용할 것입니다 테스트를 수행하려면 우리 사이트에서 CREATE UNIT 테스트 프로젝트를 표시하고 UNIT TEST라는 프로젝트로 테스트를 수행합니다 나중에 표시하지 않습니다 물론이 창에 관계없이 추가 할 수 있으므로 확인을 클릭합시다

여기에 MVC 시스템이있어 작업을 시작합니다 이제 우리가 볼 수있는 것은 솔루션 탐색기에 몇 개의 폴더가 있으며 그 중 어떤 폴더가 존재하는지 보도록하겠습니다 APP DATA에는 사이트에서 사용할 정보가 들어 있습니다 일반적으로 XML 파일이됩니다 또는 함께 작업하려는 텍스트 파일 일부 로컬 데이터베이스가있는 경우 APPDATA 내에있을 수도 있습니다 (예 : DATA-BASE 파일이 APP DATA에 있지 않을 때 SQL SERVER와 함께 작업하는 것이 좋습니다)

그러나 서버에있는 SQL 파일의 가설적인 위치에 앉아 있어야합니다 앱 시작은 나중에 사용할 모든 종류의 파일을 보유하고 있습니다 MVC는 모든 종류의 설정을 알 수 있습니다 설정할 수있는 모든 종류의 설정 예를 들어 ROUTES에 대해 이야기했습니다 그리고 우리는 여기에 ROUTE CONFIG가있어서 우리에게 사이트가 인식하는 여러 경로 정의 다음 폴더는 CONTROLLERS입니다

여기 사이트의 CONTROLLER 영역에 속한 모든 부서가 있습니다 이 대기열의 다음 폴더는 MODELS입니다 다음은 모델을 설명하는 부서입니다 그리고 마지막으로 여기에 VIEW를 설명하는 폴더가 있으며 여기에 사이트의 다른 페이지가 있습니다 우리가 먼저해야 할 일은 항상이 모델입니다

여기에 부서를 구축합니다 사이트에서 사용할 수있는 정보 설명 그럼 마우스 오른쪽 버튼을 클릭하자 클래스 추가 우리가 만든 첫 번째 클래스는 제품을 설명하는 부서입니다 PRODUCT라는 클래스를 만듭니다 PRODUCT에는 무엇이 있습니까? PRODUCT가 가지고 있다고 가정 해 봅시다

제품 이름 PRICE가 있으며 PRODUCT ID를 추가하겠습니다 따라서이 부서에서는 단일 제품 제품에 관한 순수한 정보만을 설명합니다 이 부서는 쌍극자로 정의된다는 점에 유의해야합니다 MODELS라는 네임 스페이스 MVC HELLO WORLD라는 네임 스페이스 내에 위치 우리가 연 프로젝트의 이름은? 우리는 물론이 네임 스페이스를 변경할 수 있습니다 이것은 보통 실제 프로젝트에서 수행되는 것입니다 전체 시스템이 작동하는 단일 네임 스페이스 그러나 클래스를 모델 폴더에 추가했기 때문에 그래서 우리는 시스템이 응용 프로그램 자체의 네임 스페이스 내에있는 네임 스페이스 모델을 만들었다는 것을 알 수 있습니다

우리는 현재 한 부서에서만 구축 된 모델을 완성한 후 다음으로 우리가 할 일은 컨트롤러를 만드는 것입니다 CONTROLLERS 폴더를 마우스 오른쪽 버튼으로 클릭하십시오 ADD CONTROLLER를 선택합니다 여기 우리는 CONTROLLER에 이름을 부여합니다 각 컨트롤러는 시스템의 다른 영역을 처리해야합니다

우리 시스템에 제품이 있다면 제품을 다루는 컨트롤러가 있어야하므로 제품 컨트롤러라고 부르 자 CONTROLLER 이름이 CONTROLLER로 끝나는 것이 중요합니다 현재 비어있는 MVC 컨트롤러를 사용 중입니다 내 말은, 시스템이 우리에게 모든 종류의 것을 추가하기를 원하지 않는다는 것입니다 우리가 현재 그들이 무엇인지 모르는 다른 것들 나중에 우리는 그것을 다룰 것입니다

추가 누르기 현재 제품과 관련된 모든 논리를 다루는 부서 인 CONTROLLER가 있습니다 CONTROLLER DEPARTMENT는 CONTROLLER 클래스를 상속하며 이것이 CONTROLLER가됩니다 Dippolet에서 우리는 INDEX라는 프린지가 있음을 알 수 있습니다 그녀는 가상 활동을 설명합니다 PRODUCT에 속한 CONTROLLER 중 INDEX 함수는 ACTION RESULT를 반환합니다

액션 결과는 VIEW를 볼 수있게 해줍니다 그리고 여기에 RETURN VIEW 함수가 있음을 알 수 있습니다 VIEW 실제로 이것은 우리가 곧 빌드 할 전망입니다 좋아요 VIEW를 만들자

VIEW를 보려면 매우 간단합니다 ADD VIEW 기능을 마우스 오른쪽 버튼으로 클릭하면됩니다 DIPOLET에서 VIEW의 이름은 CONTROLLER에있는 함수와 동일한 이름입니다 이제 VIEW를 추가하겠습니다 우리는 시스템에 세 가지 구성 요소가 있습니다 여기에 모델이 있다는 것을 알 수 있습니다

합계 여기 컨트롤러가 있음을 알 수 있습니다 누가 제품을 다룹니까? 그리고 INDEX라는 하나의 VIEW가 있음을 알 수 있습니다 그리고 VIEWS 폴더에있는 PRODUCTS 폴더에 있습니다 실제로 이것은 USER INTERFACE 시스템에있는 유일한 UI입니다 즉, 방금 만든 단일 페이지 모든 VIEW 페이지의 확장 CSHTML이 CSHTML은 왜입니까? 이 페이지 안에 있기 때문에 여기에 HTML 코드가 있습니다

그리고 우리는 C # 코드를 작성할 수 있습니다 RAIZOR 엔진으로 그의 목표입니다 서버 측에서 실행중인 코드 실행 궁극적으로 HTML을 클라이언트에만 반환하는 HTML을 생성합니다 따라서 현재 CONTROL F5에서 구축 한 사이트 만 실행하려면 사이트를 실행할 때 아무 것도 보지 않을 것입니다 왜냐하면 MVC에서 특정 페이지로 이동하지 않습니다

CONTROLLER에서 함수를 찾아야합니다 따라서 이것이 우리 사이트의 주소라면 슬래시를 등록 할 수 있습니다 CONTROLLER의 이름을 등록하십시오 CONTROLLERS 확장자가없는 CONTROLLER라는 단어가 없으면 그런 다음 슬래시와 탐색 할 함수의 이름 CONTROLLER 내에는 INDEX라는 함수가있었습니다 그래서 우리는 단지 함수의 이름을 등록 할 수 있습니다

ENTER를 눌러 VIEW를 얻었습니다 CONTROLLER가 우리에게 돌아갑니다 그가 쓴 모든 것은 INDEX입니다 보기 위해 잠시 시간을 들여 봅시다 그리고 그것은 VIEW 안에있는 것 같습니다

INDEX 이것은 쌍극자 활동을 설명하는 단어이므로 PRODUCT를 등록하고 ENTER를 누르더라도 INDEX라는 함수를 자동으로 찾습니다 URL 행에 작성한 모든 활동 이것은 ROUTES라는 주제로 나중에 우리가 얘기 할 것이고 여기서 정의 할 수있는 모든 것을 볼 것입니다 그러나 잠시 동안 우리는 CONTROLLER에서 VIEW로 아무 것도 전송하지 않았습니다 즉, 클라이언트가 CONTROLLER로 전송되었습니다 CONTROLLER 내에서 INDEX 기능으로 이동합니다

INDEX 함수가 VIEW를 생성했습니다 MVC가 자동으로 검색합니다 PRODUCT 폴더에있는 VIEW 우리가 CONTROLLER PRODUCT에 갔었 기 때문에 그리고이 폴더에서 VIEW 즉 페이지를 찾습니다 이름이 함수의 이름과 동일합니다 최종 고객이 미끄러 진 고객 실제로, 그는 그러한 기능을 발견한다

CONTROLLER에서 그가하는 일은 우리가 여기서 볼 수있는 객체를 만드는 것입니다 VIEW의 개체 VIEW에서 객체를 클라이언트에게 자동으로 반환하고 여기에있는 VIEW 안에있는 INDEX가 쓰여지는 전체 H2를 봅니다 CONTROLLER에서 VIEW로 정보를 이동하려고합니다 그래서 우리는 CONTROLLER에 갈 필요가 있습니다 그리고 VIEW를 다시 생성하기 전에 DATA-BASE에 액세스해야합니다 데이터베이스에 대한 액세스 데이터베이스에서 정보 가져 오기 객체를 생성하거나 DATA-BASE에서받은 정보에서 객체를 검색하려면 여기에서 정보를 VIEW로 이동하여 VIEW가 뷰에 정보를 통합합니다

우리는 현재 HELLO WORLD 프로젝트에 DATA-BASE로 가지 않고 있습니다 그러나 우리는이 오브젝트를 FLY에서 제작할 것입니다 아래에서 우리는 DATA-BASE로부터 데이터를 정확히 얻는 방법을 볼 것입니다 이제 우리가 할 일은 제품 부서에서 객체를 만드는 것입니다 더 정확하게 PRODUCT 제품 이름으로 채 웁니다

PRICE 제품 ID M에 주목해라 PRICE가 DECIMAL (으)로 설정되어 있기 때문에 그리고 45는 Double로 설정되고 M은 Debable에서 DECIMAL로 CASTING을 수행합니다 DECIMAL은 돈을 보유하도록 설계되었으며 M은 MONEY의 약자입니다