c# - 根据 .NET 应用程序中是否引发异常来设置变量
问题描述
我ConsumerBuilder
在我的应用程序使用的依赖包中有这个:
using var consumer = new ConsumerBuilder<byte[], byte[]>(config).SetErrorHandler(
(consumeException, error) => throw new Exception($"KafkaTask Kafka error, Fatal:{error.IsFatal}, " +
$"Code:{error.Code}, {error.IsBrokerError}, " +
$"IsLocalError:{error.IsLocalError}, Reason:{error.Reason}")).Build();
我想添加一些东西,如果抛出异常,则将变量设置为 true。我怎么做?
解决方案
您可以通过将多行括在花括号中来向 lambda 表达式添加多行:
var exceptionWasThrown = false;
using var consumer = new ConsumerBuilder<byte[], byte[]>(config).SetErrorHandler(
(consumeException, error) =>
{
exceptionWasThrown = true;
throw new Exception($"KafkaTask Kafka error, Fatal:{error.IsFatal}, " +
$"Code:{error.Code}, {error.IsBrokerError}, " +
$"IsLocalError:{error.IsLocalError}, Reason:{error.Reason}")
}).Build();
推荐阅读
- django - Django 选择字段默认基于查询集的索引
- python - 当给定的输入很大时,为什么旋转数组的代码会给出错误的输出?
- entity-framework-core - 以枚举 id 作为数字的 POST JSON 对象,响应返回枚举字符串名称而不是 int id
- reactjs - 如何解决旧版本antd中所有文件扩展名上传?
- deep-learning - BertModel 或 BertForPreTraining
- javascript - JS innerHTML 上
对比 - linux - awk 检查文件 A 中列的值是否存在于文件 B 中,如果不打印文件 A 的整行
- curve-fitting - GSL 中非线性曲线拟合的参数限制
- javascript - 在下面的代码中,我想使用它的 Id 获取 rs 的索引值并想得到它的位置
- python - 如何在 FastAPI 中访问我的端点视图函数中的 APP 属性?