如何验证存储位置是否等于成本中心,或者当存储位置不等于成本中心或null时可以返回null?
public List<Lookup> RetrieveStorageLocations(string bu, string costCenter, ref DBResponseContext dbResponse)
{
List<DbParameter> parameters = new List<DbParameter>();
List<Lookup> storageLocations = new List<Lookup>();
DbParameter p_storage_loc = this.MyAssetsSchemaUtil.CreateOracleUDTCollectionParam("p_storage_loc", "T_NIMA_ASSET_LKUP_OBJ_TBL", ParameterDirection.InputOutput, storageLocations);
parameters.Add(p_storage_loc);
DbParameter pStatus = this.MyAssetsSchemaUtil.CreateOutParam("p_status", NBRDBType.Int32, 30);
parameters.Add(pStatus);
DbParameter pStatusMessage = this.MyAssetsSchemaUtil.CreateOutParam("p_status_message", NBRDBType.String, 100);
parameters.Add(pStatusMessage);
DbParameter p_bu = this.MyAssetsSchemaUtil.CreateInParam<string>("p_bu", NBRDBType.String, 50, bu);
parameters.Add(p_bu);
DbParameter p_costcenter = this.MyAssetsSchemaUtil.CreateInParam<string>("p_costcenter", NBRDBType.String, 50, costCenter);
parameters.Add(p_costcenter);
this.MyAssetsSchemaUtil.ExecuteNonQuery("nima_asset_utl_pkg.get_storage_location_info", parameters);
//Read the OUT parameters
storageLocations = new List<Lookup>((Lookup[])(p_storage_loc.Value));
dbResponse.Status = pStatus.Value.ToString();
dbResponse.ErrorMessage = pStatusMessage.Value.ToString();
return storageLocations;
}
答案 0 :(得分:0)
你可以遍历列表。
通过使用
foreach (var location in storageLocations)
{
// code here to check value
}
结构类型,并根据目标值检查每个位置对象。
我会给你一个更好的代码示例,抱歉,在我的手机上有点难过。
有人可以提供更全面的例子吗? =)
或许我是个白痴,因为已经很晚了,我累了......