0

我们有一个静态的只读信息表,需要定期查阅。问题是这些数据是相关的,我们需要能够使用任何其他相关属性作为索引来获取任何属性......

在一种或两种情况下,其中一个属性可能会在行之间重复,但这种情况很少发生......(参见示例中的 ORDR 值)

例子:

formtypex | objectcode | table | description
  149          23         OQUT     Quotation
  139          17         ORDR     Order
  140          18         ORDR     Especial Order

期望的用途是这样的:

//having one property recover another property the easiest and fastest way possible
string exampleformtypex="149";

string objectcodex=relations.FromFormtypex(exampleformtypex).ObjectCode;

//or a shorter way:
string objectcodex=relations.Find(exampleformtypex, FindMode.FormTypex).ObjectCode;

//or
string objectcodex=relations.Find(exampleformtypex, FindMode.FormTypex, ResultMode.ObjectCode);

//or better
string objectcodex=relations[FindMode.FormTypex, exampleformtypex].ObjectCode;

//or if you can illustrate me with a better aproach
...

为了实现这一点,类/es定义和方法将如何?

4

1 回答 1

1

鉴于数据集很小,最好的办法是创建一个类(或结构)来保存所有值并将其全部加载到内存中

public class Relations
{
  public int formtypex;
  public int objectcode;
  public string table;
  public string description;

}

然后,您可以将其放入 List 并使用 linq 进行查询。它是如此之小,以至于遍历列表不会特别昂贵。

如果您希望它非常简单,则可以将函数包装在静态 LookupRelations 类中。

于 2012-10-16T12:24:00.533 回答