MvcContrib.Grid Видимый метод - странное поведение - PullRequest
0 голосов
/ 23 августа 2011

Я использую MvcContrib Grid, и я хотел бы установить свойство Visible столбцов в зависимости от того, присутствует ли соответствующий идентификатор Col в списке выбранных идентификаторов Col. На мой взгляд, у меня есть следующая созданная функция

@functions {

    public bool testFn(int colId, String[] str)
    {
        String temp = colId.ToString(); 
        if (Array.Exists(str, s => s.Equals(temp))) {
            return true; 
        } else {
            return false;
        }
    }
}

и массив str также определен следующим образом

@{
var myStrArr = ViewBag.selCols as String[]; 
}

Я вызываю функцию из метода Visible в Grid следующим образом

Visible(testFn(0, myStrArr))

Однако метод, похоже, полностью игнорирует возвращаемое значение. Если я изменю свою функцию на простой, как

public bool testFn(int colId, String[] str)
{
    String temp = colId.ToString(); 
    if (1 == 2) {
        return true; 
    } else {
        return false;
    }
}

и затем вызывать его точно так же, как и в методе Visible, похоже, он понимает возвращаемое ложное значение.

Может кто-нибудь помочь мне решить эту проблему, пожалуйста? Я не уверен, что я делаю неправильно. Вступление в код показывает, что возвращаемое значение правильно установлено в true или false в зависимости от входных данных, но метод Visible, похоже, полностью игнорирует возвращаемое значение.

Спасибо

1 Ответ

0 голосов
/ 25 августа 2011

Я уже разобрался с этой проблемой.Оказывается, это не было проблемой с сеткой вообще.Скорее всего, в моем вызове Ajax отсутствовала строка, которая не обновляла Grid должным образом.Забыл добавить $ ("# Grid) .html (data); в функцию успеха!

Спасибо за Джереми Скиннера, который посмотрел на меня (в группах Google MvcContrib).

Спасибо всем.

...