gpt4 book ai didi

c# - 如果属性为空,抛出哪个/何时异常?

转载 作者:行者123 更新时间:2023-11-30 14:35:59 26 4
gpt4 key购买 nike

<分区>

我有以下类(class):

class Foo
{
public Foo()
: this(new List<Bar>())
{
}

public Foo(IEnumerable<Bar> bars)
{
Bars = bars;
}

public IEnumerable<Bar> Bars { get; set; }

public Bar GetSingleBar(Data data)
{
// this method returns a single Bar from the Bars property above
// this method returns the Bar which matches the data parameter
// this method should not return null
// this method throws a NoBarsFoundException if
// (a) Bars is empty or
// (b) no bar in Bars matches the data
}
}

Barsnull 怎么办?我应该在 Bars 的 setter 中抛出异常还是应该在 GetSingleBar 中抛出异常? (GetSingleBar 方法是唯一使用 Bars 属性的方法。)

我应该抛出 ArgumentExceptionArgumentNullExceptionInvalidOperationException 还是 NoBarsFoundException

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com