Передать экземпляр переменной из другого метода

У меня есть метод при выполнении, который имеет переменную "элемент". Мне нужно передать эту переменную в мой другой метод "IsStatusChangeValid"

Ниже то, что у меня сейчас есть, но пока не работает. Я рассмотрел некоторые связанные вопросы по переполнению стека, такие как Доступ к переменным из другого метода, и посмотрел некоторые учебные пособия / примеры передачи параметров в Интернете, такие как передача параметров в C#, но я не смог правильно применить информацию.

protected override CommandResult OnExecute()
{
    var item = ItemViews.ItemGet(itemId);

    if (IsStatusChangeValid())
    { 
        ...
    }
    else
    { 
        ... 
    }
}

public bool IsStatusChangeValid(item)
{
    // ONLY IF SET EXISTS
    if (item.ItemSets.Count > 0)
    {
        // CHECK IF ITEM STATUS IS CHANGED TO "CLOSED-VOIDED"
        if (newDescription.Equals("Closed-Voided"))
        {
            // IF THERE ARE NON-VOIDED SETS, DO NOT ALLOW THE STATUS CHANGE
            if (item.ItemSets.Any(p => p.SetStatusID != SetStatusIDConstants.Voided))
            {
                return false;
            }
        }
    }
    return true;
}

1 ответ

Решение

В коде вы сделали две ошибки

  1. Объявление метода

Вы должны определить тип параметра

public bool IsStatusChangeValid(Item item)
  1. Вы должны передать элемент в вызов метода
if(IsStatusChangeValid(item))
Другие вопросы по тегам