.NET Core と .NET 5 以降で常に例外をスローする API

次の API は、すべてまたは一部のプラットフォームの .NET (Core) で、常に例外をスローします。 ほとんどの場合、スローされる例外は PlatformNotSupportedException です。

この記事では、影響を受ける API を名前空間別に整理しています。

注意

  • この記事は、作業中です。 .NET 5 以降で例外をスローする API の完全な一覧ではありません。
  • この記事には、.NET 5 以降でスローされるバイナリ シリアル化用の明示的なインターフェイス実装は含まれていません。 詳細については、.NET Core でのバイナリ シリアル化に関する記事を参照してください。

システム

メンバー スローするプラットフォーム
AppDomain.CreateDomain すべて
AppDomain.ExecuteAssembly(String, String[], Byte[], AssemblyHashAlgorithm) すべて
AppDomain.Unload(AppDomain) すべて
Console.CapsLock Linux と macOS
Console.NumberLock Linux と macOS
Delegate.GetObjectData(SerializationInfo, StreamingContext) すべて
Exception.SerializeObjectState すべて
MarshalByRefObject.GetLifetimeService() すべて
MarshalByRefObject.InitializeLifetimeService() すべて
OperatingSystem.GetObjectData(SerializationInfo, StreamingContext) すべて
Type.ReflectionOnlyGetType(String, Boolean, Boolean) すべて

System.CodeDom.Compiler

メンバー スローするプラットフォーム
CodeDomProvider.CompileAssemblyFromDom すべて
CodeDomProvider.CompileAssemblyFromFile すべて
CodeDomProvider.CompileAssemblyFromSource すべて

System.Collections.Specialized

メンバー スローするプラットフォーム
NameObjectCollectionBase(SerializationInfo, StreamingContext) すべて
NameObjectCollectionBase.GetObjectData(SerializationInfo, StreamingContext) すべて
NameObjectCollectionBase.OnDeserialization(Object) すべて

System.Configuration

メンバー スローするプラットフォーム
System.Configuration.RsaProtectedConfigurationProvider (すべてのメンバー) すべて

System.Console

メンバー スローするプラットフォーム
Console.Beep() Linux と macOS
Console.BufferHeight (set のみ) Linux と macOS
Console.BufferWidth (set のみ) Linux と macOS
Console.CursorSize (set のみ) Linux と macOS
Console.CursorVisible (get のみ) Linux と macOS
Console.MoveBufferArea Linux と macOS
Console.SetWindowPosition Linux と macOS
Console.SetWindowSize Linux と macOS
Console.Title (get のみ) Linux と macOS
Console.WindowHeight (set のみ) Linux と macOS
Console.WindowLeft (set のみ) Linux と macOS
Console.WindowTop (set のみ) Linux と macOS
Console.WindowWidth (set のみ) Linux と macOS

System.Data.Common

メンバー スローするプラットフォーム
DbDataReader.GetSchemaTable (NotSupportedException をスローする) すべて

System.Diagnostics.Process

メンバー スローするプラットフォーム
Process.MaxWorkingSet (set のみ) Linux
Process.MinWorkingSet (set のみ) Linux
Process.ProcessorAffinity macOS
Process.MainWindowHandle Linux と macOS
Process.Start(String, String, String, SecureString, String) Linux と macOS
Process.Start(String, String, SecureString, String) Linux と macOS
ProcessStartInfo.UserName Linux と macOS
ProcessStartInfo.PasswordInClearText Linux と macOS
ProcessStartInfo.Domain Linux と macOS
ProcessStartInfo.LoadUserProfile Linux と macOS
ProcessThread.BasePriority (set のみ) Linux と macOS
ProcessThread.BasePriority (get のみ) macOS
ProcessThread.ProcessorAffinity (set のみ) Linux と macOS

System.IO

メンバー スローするプラットフォーム
FileSystemInfo(SerializationInfo, StreamingContext) すべて
FileSystemInfo.GetObjectData(SerializationInfo, StreamingContext) すべて

System.IO.Pipes

メンバー スローするプラットフォーム
NamedPipeClientStream.NumberOfServerInstances Linux と macOS
NamedPipeServerStream.GetImpersonationUserName() Linux と macOS
PipeStream.InBufferSize Linux と macOS
PipeStream.OutBufferSize Linux と macOS
PipeStream.ReadMode (set のみ) Linux と macOS
PipeStream.WaitForPipeDrain() Linux と macOS

System.Media

メンバー スローするプラットフォーム
SoundPlayer(SerializationInfo, StreamingContext) すべて

System.Net

メンバー スローするプラットフォーム
AuthenticationManager.Authenticate(String, WebRequest, ICredentials) すべて
AuthenticationManager.PreAuthenticate(WebRequest, ICredentials) すべて
FileWebRequest(SerializationInfo, StreamingContext) すべて
FileWebRequest.GetObjectData(SerializationInfo, StreamingContext) すべて
FileWebResponse(SerializationInfo, StreamingContext) すべて
FileWebResponse.GetObjectData(SerializationInfo, StreamingContext) すべて
HttpWebRequest(SerializationInfo, StreamingContext) すべて
HttpWebRequest.GetObjectData(SerializationInfo, StreamingContext) すべて
HttpWebResponse(SerializationInfo, StreamingContext) すべて
HttpWebResponse.GetObjectData(SerializationInfo, StreamingContext) すべて
WebProxy(SerializationInfo, StreamingContext) すべて
WebProxy.GetDefaultProxy() すべて
WebProxy.GetObjectData すべて
WebRequest(SerializationInfo, StreamingContext) すべて
WebRequest.GetObjectData(SerializationInfo, StreamingContext) すべて
WebResponse(SerializationInfo, StreamingContext) すべて
WebResponse.GetObjectData(SerializationInfo, StreamingContext) すべて

System.Net.NetworkInformation

メンバー スローするプラットフォーム
Ping.Send Windows (UWP)

System.Net.Sockets

メンバー スローするプラットフォーム
Socket(SocketInformation) すべて
Socket.DuplicateAndClose(Int32) すべて

System.Net.WebSockets

メンバー スローするプラットフォーム
WebSocket.RegisterPrefixes() すべて

System.Reflection

メンバー スローするプラットフォーム
Assembly.CodeBase すべて
Assembly.EscapedCodeBase すべて
Assembly.ReflectionOnlyLoad すべて
Assembly.ReflectionOnlyLoadFrom(String) すべて
AssemblyName.GetObjectData(SerializationInfo, StreamingContext) すべて
AssemblyName.KeyPair すべて
AssemblyName.OnDeserialization(Object) すべて
StrongNameKeyPair すべて
StrongNameKeyPair.PublicKey すべて

System.Runtime.CompilerServices

メンバー スローするプラットフォーム
DebugInfoGenerator.CreatePdbGenerator() すべて

System.Runtime.InteropServices

メンバー スローするプラットフォーム
IDispatchImplAttribute すべて
Marshal.GetIDispatchForObject(Object) すべて
RuntimeEnvironment.SystemConfigurationFile すべて
RuntimeEnvironment.GetRuntimeInterfaceAsIntPtr(Guid, Guid) すべて
RuntimeEnvironment.GetRuntimeInterfaceAsObject(Guid, Guid) すべて
WindowsRuntimeMarshal.StringToHString(String) Linux と macOS
WindowsRuntimeMarshal.PtrToStringHString(IntPtr) Linux と macOS
WindowsRuntimeMarshal.FreeHString(IntPtr) Linux と macOS

System.Runtime.Serialization

メンバー スローするプラットフォーム
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize(Stream, Object)* すべて
BinaryFormatter.Deserialize(Stream)* すべて
XsdDataContractExporter.Schemas すべて

* .NET 8 以降のバージョンは、Windows フォームと WPF を除く、すべてのプロジェクトの種類のみを対象としています。

System.Security

メンバー スローするプラットフォーム
CodeAccessPermission.Deny() すべて
CodeAccessPermission.PermitOnly() すべて
PermissionSet.ConvertPermissionSet(String, Byte[], String) すべて
PermissionSet.Deny() すべて
PermissionSet.PermitOnly() すべて
SecurityContext.Capture() すべて
SecurityContext.CreateCopy() すべて
SecurityContext.Dispose() すべて
SecurityContext.IsFlowSuppressed() すべて
SecurityContext.IsWindowsIdentityFlowSuppressed() すべて
SecurityContext.RestoreFlow() すべて
SecurityContext.Run(SecurityContext, ContextCallback, Object) すべて
SecurityContext.SuppressFlow() すべて
SecurityContext.SuppressFlowWindowsIdentity() すべて

System.Security.Claims

メンバー スローするプラットフォーム
ClaimsPrincipal(SerializationInfo, StreamingContext) すべて
ClaimsPrincipal.GetObjectData(SerializationInfo, StreamingContext) すべて
ClaimsIdentity(SerializationInfo) すべて
ClaimsIdentity(SerializationInfo, StreamingContext) すべて
ClaimsIdentity.GetObjectData(SerializationInfo, StreamingContext) すべて

System.Security.Cryptography

メンバー スローするプラットフォーム
AsymmetricAlgorithm.Create(String) すべて
System.Security.Cryptography.CngAlgorithm Linux と macOS
System.Security.Cryptography.CngAlgorithmGroup Linux と macOS
System.Security.Cryptography.CngKey Linux と macOS
System.Security.Cryptography.CngKeyBlobFormat Linux と macOS
System.Security.Cryptography.CngKeyCreationParameters Linux と macOS
System.Security.Cryptography.CngProvider Linux と macOS
System.Security.Cryptography.CngUIPolicy Linux と macOS
CryptoConfig.EncodeOID(String) すべて
CspKeyContainerInfo Linux と macOS
CspKeyContainerInfo.Accessible Linux と macOS
CspKeyContainerInfo.Exportable Linux と macOS
CspKeyContainerInfo.HardwareDevice Linux と macOS
CspKeyContainerInfo.KeyContainerName Linux と macOS
CspKeyContainerInfo.KeyNumber Linux と macOS
CspKeyContainerInfo.MachineKeyStore Linux と macOS
CspKeyContainerInfo.Protected Linux と macOS
CspKeyContainerInfo.ProviderName Linux と macOS
CspKeyContainerInfo.ProviderType Linux と macOS
CspKeyContainerInfo.RandomlyGenerated Linux と macOS
CspKeyContainerInfo.Removable Linux と macOS
CspKeyContainerInfo.UniqueKeyContainerName Linux と macOS
ECDiffieHellmanCng.FromXmlString(String, ECKeyXmlFormat) すべて
ECDiffieHellmanCng.ToXmlString(ECKeyXmlFormat) すべて
ECDiffieHellmanCngPublicKey.FromXmlString(String) すべて
ECDiffieHellmanCngPublicKey.ToXmlString() すべて
ECDiffieHellmanPublicKey.ToByteArray() Linux と macOS
ECDiffieHellmanPublicKey.ToXmlString() すべて
ECDsaCng.FromXmlString(String, ECKeyXmlFormat) すべて
ECDsaCng.ToXmlString(ECKeyXmlFormat) すべて
HashAlgorithm.Create() すべて
HMAC.Create() すべて
HMAC.Create(String) すべて
HMAC.HashCore すべて
HMAC.HashFinal すべて
HMAC.Initialize すべて
KeyedHashAlgorithm.Create() すべて
KeyedHashAlgorithm.Create(String) すべて
ProtectedData.Protect Linux と macOS
ProtectedData.Unprotect Linux と macOS
System.Security.Cryptography.RSACryptoServiceProvider.DecryptValue(Byte[]) すべて
System.Security.Cryptography.RSACryptoServiceProvider.EncryptValue(Byte[]) すべて
System.Security.Cryptography.RSA.DecryptValue(Byte[]) すべて
System.Security.Cryptography.RSA.EncryptValue(Byte[]) すべて
RSA.FromXmlString すべて
RSA.ToXmlString すべて
SymmetricAlgorithm.Create() すべて
SymmetricAlgorithm.Create(String) すべて

System.Security.Cryptography.Pkcs

メンバー スローするプラットフォーム
CmsSigner(CspParameters) すべて
SignerInfo.ComputeCounterSignature() すべて

System.Security.Cryptography.X509Certificates

メンバー スローするプラットフォーム
X509Certificate(SerializationInfo, StreamingContext) すべて
X509Certificate.Import すべて
X509Certificate2(SerializationInfo, StreamingContext) すべて
X509Certificate2.PrivateKey (set のみ) すべて

System.Security.Authentication.ExtendedProtection

メンバー スローするプラットフォーム
ExtendedProtectionPolicy(SerializationInfo, StreamingContext) すべて

System.Security.Policy

メンバー スローするプラットフォーム
Hash.GetObjectData(SerializationInfo, StreamingContext) すべて

System.ServiceProcess.ServiceController

メンバー スローするプラットフォーム
TimeoutException(SerializationInfo, StreamingContext) すべて

System.Text.RegularExpressions

メンバー スローするプラットフォーム
Regex.CompileToAssembly すべて

System.Threading

メンバー スローするプラットフォーム
CompressedStack.GetObjectData(SerializationInfo, StreamingContext) すべて
ExecutionContext.GetObjectData(SerializationInfo, StreamingContext) すべて
Thread.Abort すべて
Thread.ResetAbort() すべて
Thread.Resume() すべて
Thread.Suspend() すべて

System.Xml

メンバー スローするプラットフォーム
XmlDictionaryReader.CreateMtomReader(Byte[], Int32, Int32, Encoding[], String, XmlDictionaryReaderQuotas, Int32, OnXmlDictionaryReaderClose) すべて
XmlDictionaryReader.CreateMtomReader(Stream, Encoding[], String, XmlDictionaryReaderQuotas, Int32, OnXmlDictionaryReaderClose) すべて
XmlDictionaryWriter.CreateMtomWriter(Stream, Encoding, Int32, String, String, String, Boolean, Boolean) すべて

関連項目