组非静态类属性
问题描述:
我在写一个.Net库,这是我的场景: 我有一个包含“批次”列表的“经理”类。每批都有一个Status属性。组非静态类属性
public class Batch
{
public string Status { get { return batchActualStatusVar; } }
}
BatchManager有一个枚举器,其键值等于可能的批处理状态。
public enum BatchStatus
{
Completed = 64,
Error = 32,
InProgress = 4
And so on.....
}
我创建批处理管理,让我根据他们的状态划分批次,这样的性质:
public List<Batch> BatchesCompleted {
get {
return Batches.Where(x => x.Status == BatchManager.BatchStatus.Completed.ToString()).ToList(); } }
问题 在哪种方式我能组属性有这样的结构:
BatchManager
PropertiesGroup
BatchesCompleted
BatchesReady
....
我试着用BatchManager类中的一个结构体,但问题是“批量”我n BatchManager不是静态的,我无法从结构中访问它们。 由于相同的原因,我无法使用其他课程。
(这不是一个具体的问题,它只是使问题简单易懂的例子)
预先感谢您
答
创建一个由酒店PropertiesGroup
和返回BatchFilter
类与来自BatchManager
public class BatchFilter
{
private List<Batch> _batches;
public BatchFilter(List<Batch> batches)
{
_batches = batches;
}
public List<Batch> BatchesCompleted {
get {
return _batches.Where(x => x.Status == BatchManager.BatchStatus.Completed.ToString()).ToList(); } }
}
class BatchManager
{
public BatchFilter PropertiesGroup { get { return new BatchQuery(Batches); }}
// ...
}
信息来建立。如果你愿意,你可以缓存它,将其复位时批量更改,等等
感谢您的解决方案! – SamDroid 2014-10-02 09:24:39