2011-06-24 10 views
2

ここで構文エラーがありますが、これは何ですか?WebグリッドMVC 3 - 条件を確認する構文がある場合

私はコントローラー

//code- I am writing this in a view-webgrid 
grid.Column(format : (item) => { 
           if(ViewBag.isAdmin) 
            { 

              Html.ActionLink("Edit", "EditSingleAbsence","Absence", new { AbsenceId = item.id }, null); 
            } 
           } 
     )  
/code ended 

それは、このエラーでcompalinesからViewBag.IsAdminを持っている:私は

ソリューション

Here ここから答えを見つけた

CS1502: The best overloaded method match for 'System.Web.Helpers.WebGrid.Column(string, string, System.Func<dynamic,object>, string, bool)' has some invalid arguments 

条件場合に使用する必要はありません。..

grid.Column(format:(item) => ViewBag.isAdmin ? Html.ActionLink("Edit", "EditSingleAbsence", "Absence", new { AbsenceId = item.id }, null) : Html.Raw("")) 
+0

まず、私はかなりそのようなラムダ式はまだレイザーでは利用できないと確信しています。 (でも私はしばらくチェックしていない)Second。あなたの答えを以下のようにして、そのようにマークすることができます。 :) – Buildstarted

+0

私はかみそりに初心者として言うことができるものは、上記のコードが動作している。解決策を回答として投稿します。 –

+0

'Html.ActionLink'に' return'文を追加するだけでした。 – Buildstarted

答えて

8

作業溶液

これは私のために働いたグーグルの後。私はこのソリューションを持っていますHere

grid.Column(format:(item) => ViewBag.isAdmin ? Html.ActionLink("Edit", "EditSingleAbsence", "Absence", new { AbsenceId = item.id }, null) : Html.Raw("")) 
関連する問題