Skip to main content
 首页 » 编程设计

c#之如何在 asp.net viewstate 中存储数组集合

2024年01月24日23mengfanrong

我有一个自定义控件,我需要将数组集合存储在 View 状态中。阵列集合是圆形鳞片。如何进一步进行?

public class CircularGauge : WebControl 
    { 
private CircularGaugeProperties model = new CircularGaugeProperties(); 
 
private List<CircularScales> scales = new List<CircularScales>(); 
[Browsable(true)] 
        [Bindable(true)] 
        [Category("Circular Gauge Properties")] 
        [Description("Scale values")] 
        [JsonProperty("scales")] 
        [MergableProperty(false)] 
        [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)] 
        [PersistenceMode(PersistenceMode.InnerProperty)] 
        public List<CircularScales> Scales 
        { 
            get 
            { 
                if (scales == null) 
                { 
                    scales = new List<CircularScales>(); 
                } 
                return scales; 
            } 
        } 
} 

其中圆形比例尺具有数组集合作为内部属性。那么我如何需要绑定(bind) Circularscales 中的属性以维护 View 状态。

请您参考如下方法:

 public List<CircularScales> Scales 
 { 
     get 
     { 
         if (ViewState["scales"] == null) 
         { 
             return new List<CircularScales>(); 
         } 
         return (List<CircularScales>)ViewState["scales"]; 
     } 
     set 
     { 
         ViewState["scales"] = value; 
     } 
 } 

有用 link关于什么是 View 状态以及如何正确使用它。