Ajax.net的未将对象引用设置到对象的实例

今天想对前几天学习Ajax做一下检验,在刚完成的一个项目了加入Ajax.NET Professional 的引用,

[环境]
    Ajax.NET Professional for .NET 1.1,版本5.11.4.2
    Visual Studio 2003

[问题]

     参照着例子完成了代码部分的工作。运行,不成功,调试发现总是报“对象引用设置到对象的实例”的错误。上网找了些资料说和调用Session有关,查看的确有调用Session的代码,代码如下:

   BLL.Apply appBll = new Apply();
   EmployRelationInfo info = new EmployRelationInfo();
   info.SenderMemID = Session["MemberID"].ToString();
   info.SenderMemName = Session["MemberName"].ToString();
   info.CropInfoID = corpid;
   info.MemID = memid;


[解决]

   将

   [AjaxPro.AjaxMethod]

   public string SendApply()

   {

         ......

         info.SenderMemName = Session["MemberName"].ToString();  

         ......

   }

   改为 

    [AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.ReadWrite)]

   public string SendApply()

   {

         ...... 

         info.SenderMemName = HttpContext.Current.Session["MemberName"].ToString(); 

         ......

   }

   另外,当Ajax.net访问Application,Request,Response时也需要加上HttpContext.Current。而且不能访问IPrincipal.IsInRole、页面的控件和ViewState。原因应该就是Ajax.net的工作方式造成的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值