1

我创建了一个新的 asp.net 自定义控件。该控件通过字符串列表获取其数据。现在我想知道对我来说更好的解决方案是什么?存储List<String>string[]

4

4 回答 4

1

一般的做法是string[]在您使用静态数组时使用,基本上是当您不需要添加/删除元素时(仅通过索引访问)。

如果需要修改集合,请使用List<string>.

所以在你的情况下,使用List<string>:)

于 2012-05-18T11:42:23.643 回答
1

就相关而言,它几乎没有什么区别ViewState。两者的大小应该几乎相同。我更喜欢List<string>提供的额外细节List<T>

于 2012-05-18T11:43:16.017 回答
1

根据对另一个问题的回答,最好将其存储为数组,因为列表本身会增加一些存储开销。

在从视图状态中检索到数组后,是否从数组中创建列表取决于您。

对于那些说“使用列表,它比数组更精细”的人——一旦集合在 ViewState 中,它是否有好的Add方法都没有关系。

public List<string> MyItemsFromViewState
{
    get { return new List<string>((string[])ViewState["MyItems"]); }
    set { ViewState["MyItems"] = value.ToArray(); }
}
于 2012-05-18T11:52:42.633 回答
0

字符串列表更适合您放置视图并从视图状态中获取,因为字符串列表将为您提供更大的工作灵活性

于 2012-05-18T11:46:47.570 回答