public override void GetObjectData(SerializationInfo info, StreamingContext context) { if (info == null) throw new ArgumentNullException(nameof(info)); info.AddValue("CompileCode", CompileCode); base.GetObjectData(info, context); }