zoukankan      html  css  js  c++  java
  • C#自定义结构的强制转换

    C#自定义结构的强制转换

    我在ASP.NET页面上定义了一个自定义结构,将该结构类型的对象存放于会话(SESSION),结果到读取SESSION的时候,强制转换回自定义结构类型失败,显示的错误也莫名其妙:
               当一个数字执行强制转换时 值必须是一个小于无限大的数字


    页面后台代码:
        struct StruMyInfo
        {
            public int UserId;
            public string Name;
      }


    StruMyInfo MyInfo
        {
            get
            {
                StruMyInfo myinfo;
                string sessionname = "MyInfo";
                if (Session[sessionname] != null)
                {
                    myinfo = (StruMyInfo) Session[sessionname]; //失败
    ……
                }
                else
    {
     ……
    Session[sessionname] = myinfo
    }
        }
    }

    到网上搜索,查不出一个屁来。网络的作用其实有时候相当有限。
    后来想了一下,大概是StruMyInfo为自定义的结构,而非通用,并且定义在一个页面上。由于网页的生存期非可持续,提交一次执行一次,造成自定义结构不可辨识。假如是WINFORM程序应该就没问题。


    于是将StruMyInfo放到独立的基类里定义,就是一个独立的DLL或者位于其他地方的一个公用类,问题解决


  • 相关阅读:
    Git 简要教程
    SDK更新失败问题解决
    常用安卓操作
    MongoDB本地安装与启用(windows 7/10)
    windows 快捷键收集
    windows 常用命令
    Lambda Expression Introduction
    对 load_breast_cancer 进行 SVM 分类
    Support Vector Machine
    使用 ID3 对 Titanic 进行决策树分类
  • 原文地址:https://www.cnblogs.com/leftfist/p/4258177.html
Copyright © 2011-2022 走看看