1

ASP.Net MVC Webgridがあり、「SuccessRate」列がゼロ未満の場合、「N/A」を表示する必要があります。私がこれをどのように行うか知っていますか?以下は私のcshtmlの一部です:

@grid.GetHtml(
    tableStyle: "grid",
    headerStyle: "head",
    alternatingRowStyle: "alt",
    columns: grid.Columns(
        grid.Column("ABC"),
        grid.Column("Units", "units"),
        grid.Column("Min_Req_Res_Points", "mrrp"),
        grid.Column("Min_Req_NRes_Points", "mrnrp"),
        grid.Column("Total_Applications_Available", "avail"),
        grid.Column("Total_Applications_Submitted", "total"),
        grid.Column("Season_Number", "Season"),
        grid.Column("Year"),
        grid.Column(columnName: "SuccessRate",
          format: @<text>@item.Success_Rate</text>)
4

2 に答える 2

0

この例をテストするために使用できるテストベッドはありませんが、?:演算子を使用することは可能ですか?

format: @<text>@item.Success_Rate >= 0 item.Success_Rate : "N/A"</text>

または、値の正しい文字列表現を提供するビューモデルを使用できます。

public string Success_Rate_Text
{
    get
    {
        return this.Success_Rate >= 0 ? SuccessRate.ToString : "N/A";
    }        
}
于 2011-04-17T04:59:33.557 に答える
0

現在、C#コンパイラを搭載したコンピュータを使用していませんが、列定義内で条件付きチェックを実行できるはずです。このようなもの:

grid.Column(columnName: "SuccessRate", 
            format: @if(item.Success_Rate < 0) { <text>N/A</text> } 
                     else { item.Success_Rate })
于 2011-04-17T05:10:48.803 に答える