using System; using System.Runtime.Serialization; namespace Microsoft.Build.Exceptions { public class InvalidToolsetDefinitionException : Exception { public InvalidToolsetDefinitionException () : this ("Invalid toolset definition") { } public InvalidToolsetDefinitionException (string message) : base (message) { } public InvalidToolsetDefinitionException (string message, Exception innerException) : base (message, innerException) { } protected InvalidToolsetDefinitionException (SerializationInfo info, StreamingContext context) : base (info, context) { ErrorCode = info.GetString ("errorCode"); } internal InvalidToolsetDefinitionException (string message, string errorCode) : base (message + " error code: " + errorCode) { ErrorCode = errorCode; } public string ErrorCode { get; private set; } public override void GetObjectData (SerializationInfo info, StreamingContext context) { base.GetObjectData (info, context); info.AddValue ("errorCode", ErrorCode); } } }