从另一个方法传入变量实例
Pass in variable instance from another method
我有一个具有变量 "item" 的执行方法。我需要将该变量传递给我的其他方法 "IsStatusChangeValid"
以下是我目前拥有的,但到目前为止还没有用。我查看了一些关于堆栈溢出的相关问题,例如 Accessing Variables From Another Method
并查看了一些在线传递 tutorials/examples 的参数,例如
Parameter Passing in 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;
}
你的代码有两个错误
- 方法声明
您必须定义参数的类型
public bool IsStatusChangeValid(Item item)
- 你必须传入一个项目到方法的调用中
if(IsStatusChangeValid(item))
我有一个具有变量 "item" 的执行方法。我需要将该变量传递给我的其他方法 "IsStatusChangeValid"
以下是我目前拥有的,但到目前为止还没有用。我查看了一些关于堆栈溢出的相关问题,例如 Accessing Variables From Another Method 并查看了一些在线传递 tutorials/examples 的参数,例如 Parameter Passing in 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;
}
你的代码有两个错误
- 方法声明
您必须定义参数的类型
public bool IsStatusChangeValid(Item item)
- 你必须传入一个项目到方法的调用中
if(IsStatusChangeValid(item))