2014-02-07 2 views
-2

MVC의 표에 열을 추가하려고하는데, 이제 Column 메서드의 첫 번째 매개 변수는 텍스트의 문자열을 사용합니다. 그래서 바인딩 된 개체에서 문자열을 검색하기 위해 람다 함수를 사용하려고 시도하는거야,이게 내가 그러나 컴파일러는 0 인수 대리자 'Func'에 0 개의 인수가 없습니다.

g.AddActionColumn(((Func<User, string>)((x)=> {return x.CurrentApplication.Name;}))()) 

을하지 않는 위임 'Func을'을 반환 지금까지 무엇을 가지고 그리드가 IEnumerable<User>CurrentApplication에 바인딩 된 클래스는 Application입니다.

AddActionColumn의 서명은 다음과 같습니다 AddActionColumn는 첫 번째 매개 변수로 Func<>을하지 않기 때문에 작동하지 않습니다

public TbbGrid<TModel, TId> AddActionColumn(string linkText, 
    string action = null, string controller = null, string area = null, 
    bool usePreviousUrl = false, bool isVisible = true, 
    Func<TModel, bool> condition = null, string cellCssClasses = null, 
    string linkCssClasses = null, string headerCssClasses = null, 
    string headerText = null, string emptyText = null, 
    string propertyName = null, bool isSortable = false, 
    string previousUrlOverride = null) 
+4

'AddActionColumn'의 서명은 무엇입니까? – Servy

+0

AddActionColumn의 서명이있는 원래 게시물을 업데이트했습니다. – Risryn

+1

정말 * 해당 기능에 대해 뭔가를해야합니다. 많은 매개 변수를 받아 들일 수있는 방법이 없습니다. – Servy

답변

1

이유는, 그것은 string합니다.

이 API는 그렇게 설계되지 않았으므로 호출 할 때 문자열을 반환하는 무언가를 전달할 수 없습니다.

+0

내가 뭘 하려는지 알아 보려면 Func <>에서 인라인 문자열을 반환해야한다는 것을 알고있다. 난 그냥 paramaters의 오른쪽 숫자를 받아 들일 수 없다 – Risryn

+0

@ 리스닝 어떤 사용자가 문자열을 얻을 것으로 기대합니까? – Servy

+0

현재 행의 사용자가 모눈으로 채워집니다. 함수가 func <>을 받아들이면 x => x.CurrentApplication.Name을 사용합니다. – Risryn

관련 문제