3
我玩弄在C#命名參數和可選參數4.在調用具有參數lambda表達式的方法時,是否可以使用命名參數?
特別是,我想打電話ASP.NET MVC中,像這樣的HtmlHelpers時使用命名參數...
@Html.DropDownList(name: "ItemGroup",
selectList: Model.ItemGroupList,
htmlAttributes: new { style="width:300px;" })
但是如果我想使用強類型的幫助器,它將lambda表達式作爲它們的第一個參數而不是字符串值?
@Html.DropDownListFor(expression: m => m.ItemGroup,
selectList: Model.ItemGroupList,
htmlAttributes: new { style = "width:300px;" })
上面的代碼表明沿着「類型參數...不能從使用推斷出來」的錯誤。
巧合的是,這只是正常工作...
@Html.DropDownListFor(m => m.ItemGroup,
selectList: Model.ItemGroupList,
htmlAttributes: new { style = "width:300px;" })
這可能是東西真的很明顯,但我很難找到任何解釋得很好,當我搜索。我可能沒有在尋找合適的術語或其他東西。無論如何,我可以用正確的方向輕推。
當視圖試圖渲染表達式作爲命名參數列出的特定錯誤是... '編譯器錯誤消息:CS0411:方法'System.Web.Mvc.Html的類型參數。 SelectExtensions.DropDownListFor(System.Web.Mvc.HtmlHelper ,System.Linq.Expressions.Expression >,System.Collections.Generic.IEnumerable ,object)'不能從使用情況中推斷出來。請嘗試明確指定類型參數.' 感謝您查看它,我同意它只是與我看到它發生的Lambdas。 –
2011-05-10 02:52:15