编程语言
首页 > 编程语言> > c# – 尝试从键值对列表构建对象时有什么好的设计?

c# – 尝试从键值对列表构建对象时有什么好的设计?

作者:互联网

因此,如果我有一个解析文本文件并返回键值对列表的列表的方法,并希望从返回的kvps创建对象(每个kvps列表代表一个不同的对象),那么最好的方法是什么?

弹出的第一种方法非常简单,只需保留一个关键字列表:

private const string NAME   = "name";
private const string PREFIX = "prefix";

并检查我得到的关于我想要的常数的键,如上所述.这是我正在研究的项目的一个相当核心的部分,所以我想做得好;有没有人有更强大的建议(不是说上面的方法有任何固有的不稳定性 – 我只是在四处询问)?

编辑:

已经要求提供更多细节.我在业余时间做一个小游戏,我正在用配置文件构建游戏世界.有四个 – 一个定义所有生物,另一个定义所有区域(及其在地图中的位置),另一个定义所有对象,最后一个定义各种配置选项和不适合其他地方的东西.使用前三个配置文件,我将根据文件的内容创建对象 – 它将非常重文本,因此会有很多字符串,如名称,复数,前缀等等.配置值都是这样的:

-
key: value 
key: value
-
key: value
key: value
-

‘ – ‘行表示新的部分/对象.

解决方法:

深入了解XmlSerializer.即使您不能使用磁盘上的XML,您也可能希望复制它的一些功能.这可能看起来像这样:

public class DataObject {
  [Column("name")]
  public string Name { get; set; }

  [Column("prefix")]
  public string Prefix { get; set; }
}

虽然在文件中包含某种格式版本但要小心,否则你将在地狱的厨房中进行下一次格式更改.

标签:c,key-value
来源: https://codeday.me/bug/20190722/1499777.html