【问题标题】:How to validate the List parameter in c# to fix CA1062如何验证 C# 中的 List 参数以修复 CA1062
【发布时间】:2017-05-05 12:41:14
【问题描述】:

我有以下代码。我得到了 FxCop 违规。我不知道如何验证 List 参数。

 public Collection<ProjectData> IsHookedConfiguredList(Collection<ProjectData> groupProjectList)
    {
        if (groupProjectList.Count != 0)
        {
           // my code
        }            

        return hookConfiguredList;
    }

我添加了if (groupProjectList.Count != 0)这一行,但我没有消除违规。

我该如何解决这个问题?

【问题讨论】:

  • 如果输入为空,你的函数会做什么?它应该抛出、传播 null、返回一个空集合吗?
  • @PanagiotisKanavos 不可能是空输入。
  • @Aruunkumar 当然有-var tempList=null;(10 lines after that); var newList=IsHookedConfiguredList(tempList);。检查输入参数并决定如何处理不可避免的空值

标签: c# visual-studio-2015 fxcop


【解决方案1】:

代码分析希望您在使用之前检查传递的参数是否为空。试试这个:

public Collection<ProjectData> IsHookedConfiguredList(Collection<ProjectData> groupProjectList)
{
    if (groupProjectList == null)
    {
        throw new ArgumentNullException(nameof(groupProjectList));
    }

    //  the code
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-22
    • 2012-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多