gpt4 book ai didi

c# 为一组对象获取属性并确保所有对象的值相同

转载 作者:太空宇宙 更新时间:2023-11-03 21:46:46 24 4
gpt4 key购买 nike

您好,我有一个 PaymentGroup 类,一个 PaymentGroup 有一个付款列表。每笔付款都有一个代码。

规则是组内的所有付款必须具有相同的代码。

我想以某种方式获取 PaymentGroup 的代码,但如果 PaymentGroup 中的付款并非都具有相同的代码,则会引发异常。

到目前为止,我的代码是 PaymentGroup 中的一个属性:

public Code
{
get
{
var codesTheSame = Payments.Select(x => x.Code)
.Distinct()
.Count() == 1;

if(!codesTheSame)
throw Exception();

return Payments.First().Code;
}
}

我认为这可以写得更简洁,但我还没有想出任何替代方案。

有什么想法吗?

最佳答案

为什么不是这样的:

public Code
{
get {
return Payments.Select(x => x.Code)
.Distinct()
.Single();
}
}

这将抛出一个 InvalidOperationException 消息“Sequence contains more than one element”,以防它包含超过 1 个代码。

关于c# 为一组对象获取属性并确保所有对象的值相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16576736/

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