C# 如何修复Viewstate中表的序列化?

C# 如何修复Viewstate中表的序列化?,c#,asp.net,.net,serialization,C#,Asp.net,.net,Serialization,我在页面中声明了一个viewstate,如下所示: public class TMP_RequestCourse { public int CourseCode; public string CourseTitle; public int PriorityID; } public TMP_RequestCourse T_RequestCourse { get { if (ViewState["TMP_RequestCourse"] == n

我在页面中声明了一个viewstate,如下所示:

public class TMP_RequestCourse
{
    public int CourseCode;
    public string CourseTitle;
    public int PriorityID;
}
public TMP_RequestCourse T_RequestCourse
{
    get
    {
        if (ViewState["TMP_RequestCourse"] == null)
            return new TMP_RequestCourse();
        return (TMP_RequestCourse)ViewState["insertMode"];
    }
    set { ViewState["TMP_RequestCourse"] = value; }
}
但当加载页面时,我收到以下错误:

程序集“App.UI,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”中的类型“App.UI.Pages.EduRequestEdit+TMP_RequestCourse”未标记为可序列化

你应该给你的班级加一个

[Serializable]
public class TMP_RequestCourse
{
    public int CourseCode;
    public string CourseTitle;
    public int PriorityID;
}
在.Net framework应用程序中创建对象时,不需要 需要考虑数据是如何存储在内存中的。因为.Net framework会为您解决这个问题。但是,如果您想存储 将一个对象的内容发送到一个文件,将一个对象发送到另一个进程 或者通过网络传输,你必须考虑 对象被表示,因为您需要将其转换为 不同的格式。这种转换称为序列化