diff --git a/src/NHibernate/SchemaValidationException.cs b/src/NHibernate/SchemaValidationException.cs index 1d3e346146c..f679fa570e7 100644 --- a/src/NHibernate/SchemaValidationException.cs +++ b/src/NHibernate/SchemaValidationException.cs @@ -1,5 +1,7 @@ using System.Collections.Generic; using System.Collections.ObjectModel; +using System.Runtime.Serialization; +using System.Security; namespace NHibernate { @@ -11,5 +13,18 @@ public SchemaValidationException(string msg, IList validationErrors) : b { ValidationErrors = new ReadOnlyCollection(validationErrors); } + + protected SchemaValidationException(SerializationInfo info, StreamingContext context) : base(info, context) + { + ValidationErrors = + (ReadOnlyCollection) info.GetValue("ValidationErrors", typeof(ReadOnlyCollection)); + } + + [SecurityCritical] + public override void GetObjectData(SerializationInfo info, StreamingContext context) + { + base.GetObjectData(info, context); + info.AddValue("ValidationErrors", ValidationErrors); + } } }