繁体   English   中英

临时表像C#中的东西

[英]Temp Table like thing in c#

我有一个需要使用表格数据的场景,这种数据不太可能更改,但是有助于实现业务逻辑:

Table

 Parent      Child         Relationship      Allowed
  A            B                 C            True
  B            A                 C            False

每行代表一个业务规则。 基于此表,我需要使用“关系”列的内容填充一个下拉控件。 我可以在C#中使用某种数据结构来存储此表格数据,还是需要使用数据库表?

除非您需要在会话之间持久保存此数据,否则无需将其存储在数据库表中。 从面向对象设计的角度来看,为什么不制作一个代表您需要的结构的对象,并因此制作一个类。 像这样:

public class Relationship
{
    public string Name { get; set; }
    public string Parent { get; set; }
    public string Child { get; set; }
    public bool Allowed { get; set; }
}

当然,请注意,我在使用字符串时可能要使用其自身“类型”的其他对象。 此外,请记住访问权限,以及访问这些属性应允许和不应该允许的内容...此示例在此刻是有意简单的!

我同意,如果这是您需要存储的所有数据,那么完整的数据库可能会过大,因此,如果您确实愿意, 可以从理论上使用C#对数据和结构进行硬编码,但在几乎所有情况下都不是一个好主意-甚至如果不太可能改变。

至少将数据存储在一个小的XML / config文件中,以便在数据确实发生更改的情况下,无需重新编译应用程序。

使用数据表: http : //msdn.microsoft.com/zh-cn/library/System.Data.DataTable.aspx

您可以创建表并按以下方式填充它:

// Definition
DataTable table = new DataTable();

DataColumn column = new DataColumn("Parent", typeof(string));
table.Columns.Add(column);

// Data
DataRow row = table.NewRow();
row["Parent"] = "A";
table.Rows.Add(row);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM