본문 바로가기
C#

ASP.net 정리

by 자유코딩 2019. 2. 7.

컨트롤러에서 화면으로 model 전달하는 방법


public IActionResult Contact()
{
    ViewData[
"Message"] = "Your contact page.";

   
var viewModel = new Address()
    {
        Name =
"Microsoft",
        Street =
"One Microsoft Way",
        City =
"Redmond",
        State =
"WA",
        PostalCode =
"98052-6399"
    };

   
return View(viewModel);
}


View(); 함수의 괄호 안에 모델 전달한다.


뷰만 전달하는 방법

return View("Views/Home/About.cshtml");


뷰와 모델을 함께 전달하려면 아래와 같이 한다.


return View("Orders", Orders);



부분 뷰 ( jsp 나 spring 에서 include와 같음 )

@await Html.PartialAsync("_PartialName.cshtml")

~/ 는  앱의 루트경로

@await Html.PartialAsync("~/Views/Folder/_PartialName.cshtml")
@await Html.PartialAsync("/Views/Folder/_PartialName.cshtml")

상대 경로로 참조

@await Html.PartialAsync("../Account/_LoginPartial.cshtml")

부분보기에 데이터 전달


@await Html.PartialAsync("_PartialName", customViewData) foreach 문과 함께 활용하기 var index = 0;

    @foreach (var section in Model.Sections)
   
{
        @await Html.PartialAsync("_ArticleSection", section,
                                 new ViewDataDictionary(ViewData)
                                 {
                                     { "index", index }
                                 })

        index++;
    }
의존성 주입 @using System.Threading.Tasks
@using ViewInjectSample.Helpers
@inject MyHtmlHelper Html // 이 부분에서 @inject 를 활용한다.
<!DOCTYPE html>
<html>
<head>
    <title>My Helper</title>
</head>
<body>
    <div>
        Test: @Html.Value // 활용
    </div>
</body>
</html>


댓글