我在我的網站的部分來看,很多網頁之間共享,搜索功能,包括:從日期
迄今爲止
文件類型
文件名
MVC3搜索用戶控件
現在,問題是,在一些頁面我不希望包含文件類型,在其他頁面我不希望(從0到)日期標準被包括在內
我該怎麼辦?我應該爲每個功能創建一個局部視圖嗎?或從內部顯示/隱藏標準?
_Filters.cshtml
@model Entities.FilterOperations
<table width="85%" border="0" align="center" cellpadding="0" cellspacing="1">
<tr>
<td class="formtit">
Start Date
</td>
</tr>
<tr>
<td>@Html.TextBoxFor(m => m.StartDate, new { @class = "date" })
</td>
</tr>
<tr>
<td class="formtit">
End Date
</td>
</tr>
<tr>
<td>@Html.TextBoxFor(m => m.EndDate, new { @class = "date" })
</td>
</tr>
<tr>
<td class="formtit">
File Type
</td>
</tr>
<tr>
<td>@Html.TextBoxFor(m => m.FileType)
</td>
</tr>
<tr>
<td class="formtit">
File Name
</td>
</tr>
<tr>
<td>@Html.TextBoxFor(m => m.FileName)
</td>
</tr> <tr>
<td align="right">
<input type="submit" value="Search" />
</td>
</tr>
</table>
我不認爲這是最好的變種。在MVC模式模型中是一個數據。無需將業務數據與此類屬性混合進行展示。 Viewdata和Viewbag是爲這種情況創建的。 – sleepwalker 2012-07-07 07:11:00
它不是數據嗎?它只是一個像IsActive或CanEdit的屬性。如果你真的想單獨考慮你的問題,試試這樣的事情吧http://kazimanzurrashid.com/posts/asp-dot-net-mvc-viewmodel-usage-and-pick-your-best-pattern – Paul 2012-07-07 19:52:47
實體是用於商業邏輯的並存儲數據,DTO的用於傳輸原始數據,ViewModels是幫助渲染視圖和命令是從視圖接收數據。以上是一個ViewModel。 – Paul 2012-07-07 21:31:17