Передать экземпляр переменной из другого метода
У меня есть метод при выполнении, который имеет переменную "элемент". Мне нужно передать эту переменную в мой другой метод "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 ответ
Решение
В коде вы сделали две ошибки
- Объявление метода
Вы должны определить тип параметра
public bool IsStatusChangeValid(Item item)
- Вы должны передать элемент в вызов метода
if(IsStatusChangeValid(item))