我实际上是在搜索guidline,如何在C#-DLL中的公共方法中记录多个异常.
例:
/// <summary> /// This method does something /// </summary> /// <param name="p_Parameter1">First parameter</param> /// <param name="p_Parameter2">Second parameter</param> /// <param name="p_Number">A number</param> /// <exception cref="ArgumentNullException"> /// Thrown if p_Parameter1 is null</exception> /// <exception cref="ArgumentNullException"> /// Thrown if p_Parameter2 is null</exception> /// <exception cref="ArgumentNullException"> /// Thrown if any element of p_Parameter2 is null</exception> /// <exception cref="ArgumentOutOfRangeException"> /// Thrown if p_Number is below or equal 0</exception> /// <returns>A object</returns>
public static object DoSomething( object p_Parameter1,IList<object> p_Parameter2,object p_Parameter3,int p_Number) { if(p_Parameter1 == null) throw new ArgumentNullException( paramName:"p_Parameter1",message:"Parameter is needed"); if (p_Parameter2 == null) throw new ArgumentNullException( paramName: "p_Parameter2",message: "Parameter is needed"); for (int i = 0; i < p_Parameter2.Count; i++) { if(p_Parameter2[i] == null) throw new ArgumentNullException( paramName: String.Format("p_Parameter2[{0}]",i),message: "All elements have to be initialized"); } if(p_Number < 0) throw new ArgumentOutOfRangeException( paramName: "p_Number",message: "Parameter should be bigger then zero"); var returnValue = new object(); // do something where p_Parameter3 == null is allowed return returnValue; }
这是记录这些例外的正确方法吗?我应该为每种情况添加一个异常标记,还是应该只为所有不允许空值的参数添加一个?
/// <exception cref="ArgumentNullException"> /// Thrown if p_Parameter1,p_Parameter2 /// or any element of p_Parameter2 are null</exception>
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。