https://www.youtube.com/watch?v=KvTy_FAYjks&index=3&list=PL6n9fhu94yhVm6S8I2xd6nYz2ZORd7X2v
------------------------------------------------------ ------------------------------------------------------
runtime using code 확인
컨트롤러.cs 에서
Index()함수 안에서 아래 구문 넣어서 확인
그리고 웹페이지 Index 확인
return typeof(Controller).Assembly.GetName().Version.ToString();
뷰엔진 (ASPX, Razor)
비쥬얼스튜디오
우측 프로젝트 최상위 우측키 클릭
web 탭에서 어디서 퍼블리싱 할 것인지 선택가능(Visual Studio or IIS)
IIs 선택하고 create Virtual Directory 선택하면 자동으로 생성됨
http://localhost/MVCDemo/Home/Index
Server Project 컨트롤러 Index함수
= http://localhost/MVCDemo
MVC URL = 컨트롤러의 액션 메소드를 매핑
일반 웹폼 URL = 물리적인 파일 매핑
------------------------------------------------------------------------------------------------ ------------
3강
global.asax
URL 매핑
컨트롤러Home 엑션 index 페이지 매핑해주는 함수호출
Routeconfig.cs
---------------------------------------------------------------------------------------------- --------------
기존 QueryString 방식
호긍
localhost/MVCDemo/home/index/10 형태로 넘길수도 있음
둘다 Index(string id, string name) 형태로 받아 사용가능
return "ID = " + id + " Name =" + name;
GET/POST 모두 가능
------------------------------------------------------
view
컨트롤러 해당 함수에서 우측키 뷰페이지 생성
public ActionResult Index()
{
.,..
..
return View();
}
public ViewResult Index()
{
.,..
..
return View();
}
public ViewResult Index()
{
//ViewBag 객체한테 넘겨준다
//동적 프로퍼티에 넣어준다.
ViewBag.Countries = new List<string>();
{
"India", "US", "Korea"
};
return View();
}
ViewBag.동적
cshtml = Razor
cshtml에서 닷넷 코드를 쓰려면 @ 골뱅이
<ul>
//똑같은 프로퍼티 명으로 받아야됨
@foreach(string strCountry in ViewBag.Countries)
{
<li>@strCountry </li>
}
</ul>
--------------------------------------------------------------------------------------------------- ---------
ViewBag, ViewData is mechanism to pass data from controller to view.
controller -> view
ViewData["aaa"] = "bbb";
ViewBag.aaa = "bbb";
---------------------------------------------------------------------------------------------------- --------
Model
view 페이지 최상단 import
@model MVCDemo.Models.Employee
컨트롤러 함수 마지막
View(employee) 넘겨줘야됨
------------------------------------------------------------------------------------------------- -----------
1. 인스톨 엔티티 프레임워크 by using nuget package manager
2. Add EmployeeContext.cs class 모델폴더에 추가
3. Add 연결문자열 to web.config
VS에서 Manage Package Manager 선택
엔티티프레임워크 선택 추가
----------------------------------------------------------------------- -------------------------------------
테이블 읽어오도록 수정
@foreach(Department department in @Model)
{
<li>
@Html.ActionLink(department.Name, "Index", "Employee", new{ departmentId = department.ID }, null)
// 인자, ,,, 컨트롤러명
</li>
}
EmplyeeController 안에 인자받는 클래스 생성
public ActionResult Index(int deptId)
{
List<Employee> employees = employeeContext.Employees.Where(emp = emp.DepartmentId == deptId).ToList();
}
----------------------------------------------------------------------------------------- -------------------
마지막 BackToList 시 에러
@Html.ActionLink("Back to List","Index" ) =>@Html.ActionLink("Back to List","Index", new{ departmentId = @Model.DepartmentId}) )
Index(int deptId) 였는데
------------------------------------------------------------------------------------------- -----------------
'기술(MS,Web,Windows,AWS) > Web개발' 카테고리의 다른 글
MVC 강의 정리 2일차 (0) | 2016.03.14 |
---|---|
[MVC] Model State, Validation도우미 (0) | 2016.03.14 |
IIS 웹사이트 및 설정 및 어플리케이션 풀 설정까지 한번에 복사하기 (0) | 2016.03.11 |
HTTP Error 503. The service is unavailable. (0) | 2016.02.12 |
DOM 문서객체모델 (0) | 2016.02.11 |