2 // System.MissingMemberException.cs
5 // Duncan Mak (duncan@ximian.com)
6 // Andreas Nahr (ClassDevelopment@A-SoftTech.com)
8 // (C) Ximian, Inc. http://www.ximian.com
11 using System.Runtime.Serialization;
16 public class MissingMemberException : MemberAccessException
18 const int Result = unchecked ((int)0x80131512);
21 protected string ClassName;
22 protected string MemberName;
23 protected byte[] Signature;
25 public MissingMemberException ()
26 : base (Locale.GetText ("Cannot find the requested class member."))
31 public MissingMemberException (string message)
37 public MissingMemberException (string message, Exception inner)
38 : base (message, inner)
43 protected MissingMemberException (SerializationInfo info, StreamingContext context)
44 : base (info, context)
46 ClassName = info.GetString ("MMClassName");
47 MemberName = info.GetString ("MMMemberName");
48 Signature = (byte[]) info.GetValue ("MMSignature", Signature.GetType ());
51 public MissingMemberException (string className, string memberName)
53 ClassName = className;
54 MemberName = memberName;
59 public override void GetObjectData (SerializationInfo info, StreamingContext context)
61 base.GetObjectData (info, context);
62 info.AddValue ("MMClassName", ClassName);
63 info.AddValue ("MMMemberName", MemberName);
64 info.AddValue ("MMSignature", Signature);
67 public override string Message {
69 if (ClassName == null)
72 String msg = Locale.GetText ("Member {0}.{1} not found.");
73 return String.Format (msg, ClassName, MemberName);