좋아,Asp.Net MVC/Entity Framework. 태그 수프를 피하십시오?
엔티티 프레임 워크를 사용하는 새로운 MVC 프로젝트가 있습니다. 나는 메시지를 뱉어 내고있다. (이것은 게시판 스타일 섹션이다.) 이제는 테이블 출력의 행에 다른 클래스 스타일이 있어야하는 몇 가지 조건적인 요인에 따라 다르다.
컨트롤러에서 페이지로 전달되는 모델은 엔티티 모델입니다 (호출 메시지 및 데이터베이스와 같은 필드 포함) 이제
행 스타일을 얻는을에서 나는 다음,
했다<%
int i = 0;
foreach (var message in ViewData.Model.MessageList)
{
string className = "rowEven";
if (i % 2 == 0) { className = "rowOdd"; }
if (message.Deleted) { className = "deleted"; }
if (message.AuthorisedBy == null) { className = "notAuth"; }
if (message.Deleted) { className = "deleted"; }
%>
<tr class="<%=className%>">
<td><%= Html.CheckBox("mc1")%></td>
<td>
<%= Html.ActionLink(message.Title, "Details", new { id = message.MessageID })%>
</td>
<td>User Name Here</td>
<td><%= Html.Encode(message.PublishDateTime.ToString())%></td>
</tr>
<%
i++;
}
%>
어느 쪽이 꽤 못 생깁니 까, 어떤 제안이 더 좋은 방법이 있어야합니까?
그냥 당신이 뷰 모델과 Html 헬퍼를 모두 사용할 수있는 추가 할. 일부 자료 (데이터 변환)는 ViewModel에 속하며 일부 항목 (특정 CSS 클래스 선택)은 HTML 도우미에 속합니다. 하나의 MessageItemViewModel을 사용하고 하나의 행만 렌더링하는 부분을 가짐으로써 Ajax 작업을 시작할 때 도움이 될 수 있습니다. –
우리는 꽤 빨리 할 수있는 Ajax가 많기 때문에 당신이 말한 것을 좋아합니다. 추천 또는 몇 가지 예에 대한 링크를 제공 할 수 있습니까? 우리는 MVC를 처음 접했습니다. – LiamB
약간의 노력이 필요하지만 뷰 엔진을 전환하면 페이지 내용이 더 선명하게 보일 수 있습니다. Spark View Engine을 살펴보십시오. http://sparkviewengine.com/ – alexandrul