从 web 方法修改会话

session modify from webmethod

是否可以通过网络方法修改会话,完整的描述是,

我有一个客户端触发的按钮,用于将文本框中的数据添加到会话中的一个新行中

会话声明为

public List<Some_Business_Object_Here> A_Session
{
            get
            {
                return (List<Some_Business_Object_Here>)Session["Session_Name_Here"];
            }
            set
            {
                Session["Session_Name_Here"] = value;
            }
}

和 WebMethod

[WebMethod]
public static string InsertItemDt(List<string> dataIns)
{
            BOResponse objRes = new BOResponse();
            SomeFormHere form = new SomeFormHere();

            Some_Business_Object_Here objDet = new Some_Business_Object_Here();
            objDet.Data1 = dataIns[0];
            objDet.Data2 = Convert.ToInt32(dataIns[1]);
            objDet.Data3 = Convert.ToDecimal(dataIns[2]);            

            objRes = form.A_Processing_Method(objDet, ListItemDetail);

            return new JavaScriptSerializer().Serialize(objRes);
}

并且如果方法在一些验证后处理以添加新行

这种方法可以吗?

编辑:BOResponse 是验证对象,仅包含错误代码和捕获错误消息

所以方法就像

 Private BOResponse A_Processing_Method (Some_Business_Object_Here obj)
{
    try
    {
       (Some Validation Here...)

       if (!validation)
       {
          MsgCode = 10;
          MsgDesc = "Some Custom Error Text Here"
       }
       else
       {
           A_Session.Add(obj);
       }
    }
    catch (Exception err)
    {
       MsgCode = 20;
       MsgDesc = err.Message;
    }
}

没关系,好​​像是这样的