【发布时间】:2016-03-03 17:46:24
【问题描述】:
最近,我开始接触 C# (ASP.NET) 并从 PHP 继续前进。我想实现这样的目标:
mainArray (
array 1 (
'name' => 'example'
),
array 2 (
'name' => 'example2'
)
);
我知道您可以在 C# 中使用Array,但是,您必须在这样做之前指明数组的长度,这就是问题所在。
我想在一个类函数中循环一个数据库,它返回一个包含所有列的数组,即:
id、用户名、电子邮件。
我试过了:
public Array search_bustype(string match, string forthat)
{
db = new rkdb_07022016Entities2();
var tbl = (from c in db.tblbus_business select c).ToArray();
List<string> List = new List<string>();
int i = 0;
foreach (var toCheck in tbl)
{
if (toCheck.BusType.ToString() == match)
{
if (forthat == "Name")
{
List.Add(toCheck.Name);
}
if (forthat == "Address")
{
}
}
i++;
}
return List.ToArray();
}
但正如您所见,我只需要返回单列,因为 List 不是多维的(不能嵌套)。
我可以用什么来解决这个问题?我查看了一些链接:
但这又是我的结构的一个问题,因为我不知道声明数组时需要多少索引 - 数据库每天都在增长。
提前致谢。
【问题讨论】:
-
重新考虑整个设置不是更好的选择吗?既然您使用的是数据库中的数据,为什么不使用模型来保持数据的结构化?
-
您能在这方面提供任何参考吗? - 我是 C# 新手。将不胜感激! @Matthijs
-
您基本上会使用您的数据包含的属性创建一个类,并用该类的实例填充一个列表。 like this 可以提供帮助。
-
这取决于您的班级设置。不过,我会为每个属性创建 getter 和 setter 方法。看看 C# 中的自动属性。
-
实体框架可以更好地使用模型,所以我建议使用它们!
标签: c# arrays multidimensional-array