Tôi đang sử dụng một nếu khác trong Razor view để kiểm tra giá trị null như thế này:lệnh if khác trong Razor không hoạt
@foreach (var item in Model)
{
<tr id="@(item.ShopListID)">
<td class="shoptablename">@Html.DisplayFor(modelItem => item.Name)
</td>
<td class="shoptableamount">
@if (item.Amount == null)
{
Html.Display("--");
}
else
{
String.Format("{0:0.##}", item.Amount);
}
</td>
</tr>
}
Tuy nhiên, bất kể số lượng mô hình của tôi là null hoặc có một giá trị, html rendered không chứa bất kỳ giá trị nào trong số tiền.
Tôi tự hỏi tại sao điều này lại xảy ra. Bất kỳ ý tưởng?
Thanks ...
EDIT:
Quyết định đã làm nó trong bộ điều khiển:
// Function to return shop list food item amount
public string GetItemAmount(int fid)
{
string output = "";
// Select the item based on shoplistfoodid
var shopListFood = dbEntities.SHOPLISTFOODs.Single(s => s.ShopListFoodID == fid);
if (shopListFood.Amount == null)
{
output = "--";
}
else
{
output = String.Format("{0:0.##}", shopListFood.Amount);
}
return output;
}
và gọi tại Xem như:
<td class="shoptableamount">
@Html.Action("GetItemAmount", "Shop", new { fid = item.ShopListFoodID })
</td>
Bạn sẽ phải cho chúng tôi biết chính Mô hình trông như thế nào, cụ thể là trường Model.Amount. Có lẽ hãy thử @if (string.IsNullOrEmpty (item.Amount) thay thế? –
Xin cảm ơn sự giúp đỡ của bạn, nhưng số lượng là một số thập phân và nếu tôi làm theo một u đã nêu ở đây, nó không hoạt động. Tôi quyết định làm điều đó trong bộ điều khiển Cảm ơn bạn :) – shennyL
Nếu kết hợp khác thực sự không hoạt động trong dao cạo. – Anderson