首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数组列表多维C# 2.0

数组列表多维C# 2.0
EN

Stack Overflow用户
提问于 2013-10-17 23:44:02
回答 2查看 775关注 0票数 0

我正在尝试创建一个多维数组

到目前为止我得到的是..。

代码语言:javascript
复制
ArrayList iEFiles = (ArrayList)Session["Files"];
iEFiles.Add(Server.MapPath(FileName));

FileName = "Testing123"
FileName = "AnotherTest"

我想做的是让它像这样...

代码语言:javascript
复制
FileName = ("Testing123", "Waterproof")
FileName = ("AnotherTest", "Non-Waterproof")

Array[,]一样

有什么想法吗?

要显示记录...BindGridview(iEFiles);

代码语言:javascript
复制
    private void BindGridview(ArrayList list)
    {
        DataTable dt = new DataTable();
        dt.Columns.Add("FileName");
        dt.Columns.Add("id");
        dt.Columns.Add("snFile");
        int c = list.Count;

        for (int i = 0; i < c; i++)
        {
            dt.Rows.Add();
            dt.Rows[i]["FileName"] = list[i].ToString().ToUpper();
            dt.Rows[i]["id"] = i;
            dt.Rows[i]["snFile"] = list[i].ToString();
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();

    }
EN

回答 2

Stack Overflow用户

发布于 2013-10-17 23:46:40

您可以使用Hashtable / Dictionary来存储键值对。如果您不希望这样做,您可以创建一个具有两个属性FileNameValue的类,并将该类的对象存储在ArrayList中,或者最好是泛型List<T>中。

代码语言:javascript
复制
class FileInformation
{
  public FileInformation(string fileName, string value)
  {
     FileName = fileName;
     Value = value;
  }
  public string FileName;
  public string Value;
}

List<FileInformation> lst = new List<FileInformation>();
lst.Add(new FileInformation("fileName", "somevalue"));
票数 2
EN

Stack Overflow用户

发布于 2013-10-17 23:50:25

在我们有泛型之前,ArrayList有点像.net 1.x的倒退。

您可以使用Dictionary<string,string>来存储这些值,但是第一项是一个键,并且必须是惟一的。如果你只想存储两个值的列表,你可以使用像List<KeyValuePair<string,string>>List<string[]>这样的东西。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19431297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档