在“解决方案资源管理器”中右击 Web 窗体,然后单击“查看代码”。
在类中,添加名为 PopulateStockValuesArrayList() 的新公共作用域帮助器方法(不带返回值)。
``` vb
Public Sub PopulateStockValuesArrayList()
End Sub
```
``` csharp
public void PopulateStockValuesArrayList()
{
}
```
- 在 PopulateStockValuesArrayList() 方法中的现有代码之前,创建一个 if/else 条件块,检查是否存在名为 stockValues 的 Session 对象。
``` vb
If (Session("stockValues") Is Nothing) Then
Else
End If
```
``` csharp
if(Session["stockValues"] == null)
{
}
else
{
}
```
- 在 If 块中,实例化一个新的 ArrayList()。
``` vb
stockValues = New ArrayList
```
``` csharp
stockValues = new ArrayList();
```
接下来,使用 Stock 类的重载构造函数来创建并实例化三个 Stock 实例。
Dim s1 As Stock = New Stock("AWRK", 1200, 28.47) Dim s2 As Stock = New Stock("CTSO", 800, 128.69) Dim s3 As Stock = New Stock("LTWR", 1800, 12.95)Stock s1 = new Stock("AWRK",1200,28.47); Stock s2 = new Stock("CTSO",800,128.69); Stock s3 = new Stock("LTWR",1800,12.95);将这三个实例添加到 stockValues 中。
``` vb
stockValues.Add(s1)
stockValues.Add(s2)
stockValues.Add(s3)
```
``` csharp
stockValues.Add(s1);
stockValues.Add(s2);
stockValues.Add(s3);
```
将更新的 stockValues ArrayList 添加到会话中。
Session("stockValues") = stockValuesSession["stockValues"]=stockValues;在 Else 块中,编写一行代码,将会话中保存的当前值赋给 stockValues ArrayList。
``` vb
stockValues = Ctype(Session("stockValues"), ArrayList)
```
``` csharp
stockValues = (ArrayList)Session["stockValues"];
```
- 最后,从 ConfigureCrystalReports() 方法中调用 PopulateStockValuesArrayList()。
它应该是在 ConfigureCrystalReports() 方法中执行的第一行代码。
``` vb
PopulateStockValuesArrayList()
```
``` csharp
PopulateStockValuesArrayList();
```