从另一个方法中的一个方法访问列表
本文关键字:方法 一个 访问 列表 另一个 | 更新日期: 2023-09-27 17:58:12
我想知道如何从一个方法访问另一个方法中的列表。基本上我想做这样的事情:
public class StatisticsController : BaseNopController
{
public List<Visitors> CreateVisitorsReport (StatisticsListModel model)
{
var StartDate = DateTime.Today.AddDays(-10);
var EndDate = DateTime.Today.AddDays(-1);
// -- Visitors class contain properties "Date" and "TotalVisitors". Dates between Start and EndDate
List<Visitors> VisitorsList = new List<Visitors>();
// --- Some code populating a list of Visitors objects
return VisitorsList;
}
public List<Orders> CreateOrdersReport (StatisticsListModel model)
{
var StartDate = DateTime.Today.AddDays(-10);
var EndDate = DateTime.Today.AddDays(-1);
// -- Visitors class contain properties "Date" and "TotalOrders". Dates between Start and EndDate
List<Orders> PersonList = new List<Orders>();
// --- Some code populating a list of Orders objects
return OrdersList;
}
}
现在,在第三种方法中,我想计算Visitors.TotalVisitors和Orders.TotalOrders的转换率,为了做到这一点,我还需要从"CreateVisitorsReport和CreateOrdersReport."的返回中重新获得结果
很抱歉,如果我的代码看起来很愚蠢,但我对此有点陌生,所以这可能不是最佳的,我可能应该使用一些模式。
我的第三种方法看起来像这样:
public List<IEnumerable> CreateConversionReport(StatisticsListModel model)
{
List<Ienumerable> ConversionList = new List<IEnumerable>();
foreach (var CreationDate in orders )
{
// -- Devide all Visitors in VisitorsList with Orders in OrdersList
}
return ConversionList;
}
摘要:为了在"CreateConversionReport"中创建转换计算,我需要访问VisitorsList和OrdersList,因为它们包含我计算转换所需的所有数据。
感谢
您有两个选择:
- 从方法中调用
CreateVisitorsReport
和CreateOrdersReport
,获取列表,执行操作 - 如果这不是您想要在类级别声明列表的方式,请将定义放在方法之外,然后您可以从
CreateConversionReport
访问它们
有三种方法,
- 声明2在类中列出变量,并在方法中分配它们(而不是返回或在调用它们之后),它们在第三个方法中使用它
- 声明List并将其传递给CreateOrdersReport和CreateVisitorsReport,然后它们填充列表
- 在第三个方法中调用它们,您就得到了它们的结果,然后使用它