web.config:sessionState mode="SQLServer"
class: 
namespace test
{
    [DataContract]
    public class User
    {
        [DataMember]
        public override long ID { get; set; }        [DataMember]
        public string FirstName { get; set; }        [DataMember]
        public string MiddleName { get; set; }        [DataMember]
        public string LastName { get; set; }        [DataMember]
        public string WindowsID { get; set; }        [DataMember]
        public override bool? IsActive { get; set; }
    }
}
code:
Session["User"] = user;
错误信息:
Unable to serialize the session state. In 'StateServer' and 'SQLServer' mode, ASP.NET will serialize the session state objects, and as a result non-serializable objects or MarshalByRef objects are not permitted. The same restriction applies if similar serialization is done by the custom session state store in 'Custom' mode. 请求帮助,谢谢