1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
|
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
/*=============================================================================
**
** Interface: _Exception
**
**
** Purpose: COM backwards compatibility with v1 Exception
** object layout.
**
**
=============================================================================*/
namespace System.Runtime.InteropServices {
using System;
using System.Reflection;
using System.Runtime.Serialization;
using System.Security.Permissions;
[GuidAttribute("b36b5c63-42ef-38bc-a07e-0b34c98f164a")]
[InterfaceTypeAttribute(ComInterfaceType.InterfaceIsDual)]
[CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(true)]
public interface _Exception
{
#if !FEATURE_CORECLR
// This contains all of our V1 Exception class's members.
// From Object
String ToString();
bool Equals (Object obj);
int GetHashCode ();
Type GetType ();
// From V1's Exception class
String Message {
get;
}
Exception GetBaseException();
String StackTrace {
get;
}
String HelpLink {
get;
set;
}
String Source {
#if FEATURE_CORECLR
[System.Security.SecurityCritical] // auto-generated
#endif
get;
#if FEATURE_CORECLR
[System.Security.SecurityCritical] // auto-generated
#endif
set;
}
[System.Security.SecurityCritical] // auto-generated_required
void GetObjectData(SerializationInfo info, StreamingContext context);
#endif
//
// This method is intentionally included in CoreCLR to make Exception.get_InnerException "newslot virtual final".
// Some phone apps include MEF from desktop Silverlight. MEF's ComposablePartException depends on implicit interface
// implementations of get_InnerException to be provided by the base class. It works only if Exception.get_InnerException
// is virtual.
//
Exception InnerException {
get;
}
#if !FEATURE_CORECLR
MethodBase TargetSite {
get;
}
#endif
}
}
|