销售电话: 1-800-867-1380
此文章由机器翻译。 将光标移到文章的句子上,以查看原文。 更多信息。
译文
原文
信息
您所需的主题如下所示。但此主题未包含在此库中。

ArgumentException 类

当向方法提供的参数之一无效时引发的异常。

System.Object
  System.Exception
    System.SystemException
      System.ArgumentException
        更多...

命名空间:  System
程序集:  mscorlib(在 mscorlib.dll 中)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class ArgumentException : SystemException, 
	ISerializable

ArgumentException 类型公开以下成员。

  名称说明
公共方法由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持ArgumentException()初始化 ArgumentException 类的新实例。
公共方法由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持ArgumentException(String)使用指定的错误信息初始化 ArgumentException 类的新实例。
受保护的方法ArgumentException(SerializationInfo, StreamingContext)用序列化数据初始化 ArgumentException 类的新实例。
公共方法由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持ArgumentException(String, Exception)使用指定错误消息和对作为此异常原因的内部异常的引用来初始化 ArgumentException 类的新实例。
公共方法由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持ArgumentException(String, String)使用指定错误消息和导致此异常的参数的名称来初始化 ArgumentException 类的新实例。
公共方法受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持ArgumentException(String, String, Exception)使用指定错误消息、参数名和对内部异常(为该异常根源)的引用来初始化 ArgumentException 类的新实例。
页首

  名称说明
公共属性受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持Data获取一个提供用户定义的其他异常信息的键/值对的集合。 (继承自 Exception。)
公共属性受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持HelpLink获取或设置指向此异常所关联帮助文件的链接。 (继承自 Exception。)
公共属性由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持HResult获取或设置 HRESULT(一个分配给特定异常的编码数字值)。 (继承自 Exception。)
公共属性由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持InnerException获取导致当前异常的 Exception 实例。 (继承自 Exception。)
公共属性由 XNA Framework 提供支持Message获取错误消息和参数名;如果未设置参数名,则仅获取错误消息。 (重写 Exception.Message。)

在 XNA Framework 3.0 中,此成员继承自 Exception.Message
公共属性受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持ParamName获取导致该异常的参数的名称。
公共属性受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持Source获取或设置导致错误的应用程序或对象的名称。 (继承自 Exception。)
公共属性由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持StackTrace获取调用堆栈上直接帧的字符串表示形式。 (继承自 Exception。)
公共属性TargetSite获取引发当前异常的方法。 (继承自 Exception。)
页首

  名称说明
公共方法由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持Equals(Object)确定指定的对象是否等于当前对象。 (继承自 Object。)
受保护的方法由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持Finalize允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持GetBaseException当在派生类中重写时,返回 Exception,它是一个或多个并发的异常的根源。 (继承自 Exception。)
公共方法由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持GetHashCode作为默认哈希函数。 (继承自 Object。)
公共方法GetObjectData设置带有参数名和附加异常信息的 SerializationInfo 对象。 (重写 Exception.GetObjectData(SerializationInfo, StreamingContext)。)
公共方法由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持GetType获取当前实例的运行时类型。 (继承自 Exception。)

在 XNA Framework 3.0 中,此成员继承自 Object.GetType()


在 可移植类库 可移植类库 中,此成员继承自 Object.GetType()


在 适用于 Windows 应用商店应用的 .NET Windows 8 中,此成员继承自 Object.GetType()
受保护的方法由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持MemberwiseClone创建当前 Object 的浅表副本。 (继承自 Object。)
公共方法由 XNA Framework 提供支持受 可移植类库 支持受 适用于 Windows 应用商店应用的 .NET 支持ToString创建并返回当前异常的字符串表示形式。 (继承自 Exception。)
页首

  名称说明
受保护的事件SerializeObjectState在序列化异常,以创建包含有关异常的序列化数据的异常状态对象时发生。 (继承自 Exception。)
页首

在调用某方法但传递的参数中至少有一个不符合所调用方法的参数规范时,将引发 ArgumentException ArgumentException 的所有实例均应带有有意义的错误消息,描述无效参数以及该参数所需的值范围。

ArgumentException 的主要派生类有 ArgumentNullExceptionArgumentOutOfRangeException 应使用这两种派生类取代 ArgumentException,除非这两种派生类都不被接受。 例如:

  • 每当向方法传递 null 而该方法不把它作为有效参数接受时,应由 ArgumentNullException 引发异常。

  • 当参数值超出可接受值的范围(例如,在创建 DateTime 时将值“46”作为月份参数传递)时,应由 ArgumentOutOfRangeException 引发异常。

如果方法调用没有任何参数,或者失败未涉及参数本身,则应当使用 InvalidOperationException 引发异常。

ArgumentException 使用值为 0x80070057 的 HRESULT COR_E_ARGUMENT。

有关 ArgumentException 实例的初始属性值列表,请参见 ArgumentException 构造函数。

下面的示例演示如何引发和捕捉 ArgumentException


using System;

public sealed class App 
{
    static void Main() 
    {
        // ArgumentException is not thrown because 10 is an even number.
        Console.WriteLine("10 divided by 2 is {0}", DivideByTwo(10));
        try 
        {
             // ArgumentException is thrown because 7 is not an even number.
             Console.WriteLine("7 divided by 2 is {0}", DivideByTwo(7));
        }
        catch (ArgumentException)
        {
            // Show the user that 7 cannot be divided by 2.
            Console.WriteLine("7 is not divided by 2 integrally.");
        }
    }

    static int DivideByTwo(int num) 
    {
        // If num is an odd number, throw an ArgumentException.
        if ((num & 1) == 1)
            throw new ArgumentException("Number must be even", "num");

        // num is even, return half of its value.
        return num / 2;
    }
}


// This code produces the following output.
// 
// 10 divided by 2 is 5
// 7 is not divided by 2 integrally.


.NET Framework

受以下版本支持:4.5.2、4.5.1、4.5、4、3.5、3.0、2.0、1.1、1.0

.NET Framework Client Profile

受以下版本支持:4、3.5 SP1

可移植类库

受以下版本支持:可移植类库

适用于 Windows 应用商店应用的 .NET

受以下版本支持:Windows 8

适用于 Windows Phone 应用的 .NET

受以下版本支持:Windows Phone 8、Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008(不支持服务器核心角色), Windows Server 2008 R2(支持带 SP1 或更高版本的服务器核心角色;不支持 Itanium)

.NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参阅.NET Framework 系统要求

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。
本文是否对您有所帮助?
(1500 个剩余字符)
感谢您的反馈

社区附加资源

显示:
© 2015 Microsoft