在会话中保存数组 C# 错误

Pra*_*ddy 0 c# asp.net web-services

我正在尝试在会话中保存数组并尝试将其恢复。以下是代码。但是当我调用 WebMethod 时出现以下错误。我正在使用c#。VS2010

错误:

System.NullReferenceException:未将对象引用设置为对象的实例。在 C:\Users\uydarp\Documents\Visual Studio 2010\Projects\xmlRW1\xmlRW1\Service1.asmx.cs 中的 xmlRW1.Service1.logic() 处:第 86 行

[WebMethod]
    public int logic()
    {
        int[] myArray = { 1,2,3,4};
        Session["MyArray"] = myArray; 

        int[] myArray2 = (int[])Session["MyArray"];
        int firstElement = myArray2[0];

        return firstElement;
    }
Run Code Online (Sandbox Code Playgroud)

Ken*_*eth 5

SessionState 在服务中默认是禁用的asmx。您可以通过更改WebMethod属性来显式启用它:

[WebMethod(EnableSession = true)]
public int logic()
{
    int[] myArray = { 1,2,3,4};
    Session["MyArray"] = myArray; 

    int[] myArray2 = (int[])Session["MyArray"];
    int firstElement = myArray2[0];

    return firstElement;
}
Run Code Online (Sandbox Code Playgroud)