【发布时间】:2015-09-23 05:15:32
【问题描述】:
我定义了一个具有List<> 的类。我已经缩短了我的代码。它太大了。 List<>& 中有太多 Method1() 中有很多代码。这是我的代码:-
public class Time : ITime
{
public List<Table1> Setts1 = new List<Table1>();
public List<Tabl2> Setts2 = new List<Table2>();
public void LoadSettings1(int companyId)
{
Setts1 = ctx.tblSett1.Where(a => a.CompanyId == companyId).Select(a => a).ToList();
}
public double Method1()
{
var data = Setts1.Where(m => m.SetType == "TYPE1").Select(m => m.Value1).FirstOrDefault();
......
......
}
}
我想在另一个班级使用Method1()。我的问题是Setts1,它预装在Time 类中。因此,当它在Time 类中使用时,它具有Records。但是当我从另一个班级调用它时,显然Setts1 将没有记录。我试图从另一个这样的类初始化它:-
public class Class
{
.....
Time cls = new Time();
cls.Setts1 = ....;
cls.Method1();
}
但是Setts1 在Method1 中时没有显示任何记录。如何从另一个类初始化List<>?
【问题讨论】:
-
Setts1似乎已在方法LoadSettings1中填充,并且您没有在Class中调用此方法(最后一个 sn-p 有问题)。这会导致问题吗? -
我无法从另一个班级呼叫
LoadSettings1。所以我想从调用类初始化它。 -
为什么不能调用呢?是因为你在外面没有公司id吗?
-
因为
LoadSettings1有很多其他类不需要的东西。List<>不止一个,还有很多。代码3000多行。 -
如果情况如此,那么您必须自己弄清楚如何初始化您的列表,因为我们无法猜测您的庞然大物类中还有什么其他东西。
标签: c# asp.net-mvc class oop