2012-03-19 5 views
2

저는 .NET 개발에 익숙하며 도움이 필요합니다.부분보기에 매개 변수 보내기

별표를 등급으로 표시해야합니다. 이 디스플레이는 대부분의 내 페이지에 코드로 나타납니다.

그래서이 문제를 처리하는 가장 좋은 방법은 부분보기를 사용하는 것입니다.

몇 가지 연구 끝에 부분 뷰에이 매개 변수를 보낼 수있는 기능을 발견했습니다. 예를 들어, 그

@Html.Partial("~/Views/Search/_SearchPartial.vbhtml", model.contact.rating) 

같은 부분 뷰를 호출하지만,이 부분도 안쪽이 매개 변수를 잡는 방법을 모르는하여

. 게다가 문맥은 결코 같지 않을 것입니다. 때로는 별표를 표시해야 할 것입니다. 뭔가 바뀌 었습니까? 이 부분보기로 평가를 통과하면

답변

1

당신은 당신과 함께 다루고 모델의 종류를 알아보기 위해 부분보기

<div> 
<p>Current rating: @Model</p> 
<div> 

내부의 Model 객체를 통해이를 지정할 필요가 액세스 할 수 있습니다 부분 뷰 상단의 유형 :

@model MyNamespace.MovieRating 

<div> 
<p>Current rating: @Model</p> 
<div> 

이 모든 것은 평가 대상이 항상 동일한 유형으로 간주됩니다. 등급 객체가 다른 경우 하나의 유형으로 구문 분석하거나 등급 객체의 모든 유형에 대해 하나의보기를 생성해야합니다.

1

등급 값은 부분 뷰의 Model 객체 (정수 또는 double 값)가 될 것이며 일반보기처럼 사용하십시오.

1

편집기 템플릿 또는 디스플레이 템플릿을 사용하면 더 효율적입니다.

조회수/공유는/DisplayTemplates

  • DisplayTemplates 폴더 내부의보기를 만듭니다 사용하여 템플릿

    1. 를 들어 폴더가 있음을 만듭니다. 그것은 Rating.cshtml를 호출하고 그 코드를 붙여 넣습니다

      @model int 
      
      <div><p>Current rating: @Model</p></div> 
      
    2. 전화 대신 @ Html.Partial의보기에이 템플릿 :

      @Html.DisplayFor(model=>model.contact.rating, "Rating") 
      
  • +0

    @ Html.DisplayFor (모델> = Model.Contact. 등급, "등급"), 그것은 '> =' 'MvcApplication4.ContactDeteils'et 'Integer'형식을 따르지 않습니다. 추신 : 나는 VB.NET –

    +0

    마지막으로, 나는 그것을 좋아하지 않아 developping 해요 : @ Html.Partial ("~/Views/Search/_SearchPartial.vbhtml", model.contact.rating), 그리고 없었어요 모델의 사용상의 문제. 정말 고마워! –

    관련 문제