如何调用泛型 lambda 表达式?

发布于 2024-09-12 00:39:13 字数 275 浏览 4 评论 0原文

private void ExecuteCommand(Expression<Func<bool>> command)
{
    bool success = command.Compile().Invoke();
}

private void Test()
{
    ExecuteCommand(() => _gc.ChargeCancellation(""));
}

通过这段代码,我得到了一个 NullReferenceException。

private void ExecuteCommand(Expression<Func<bool>> command)
{
    bool success = command.Compile().Invoke();
}

private void Test()
{
    ExecuteCommand(() => _gc.ChargeCancellation(""));
}

With this code, I got a NullReferenceException.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

寂寞美少年 2024-09-19 00:39:13

_gc 是否有可能为空?或者也许 ChargeCancellation 本身正在抛出异常?否则应该可以正常工作。

Is _gc null by any chance? Or perhaps ChargeCancellation itself is throwing the exception? It should work fine otherwise.

等待圉鍢 2024-09-19 00:39:13

查看堆栈跟踪或在这一行添加断点:

ExecuteCommand(() => _gc.ChargeCancellation(""));

鉴于您发布的信息,除了一般评论之外,这个社区中的任何人都没有机会真正帮助您。

Look through the stack trace or add a breakpoint at this line:

ExecuteCommand(() => _gc.ChargeCancellation(""));

Given the information you have posted there's no chance of anybody in this community really helping you beyond generic comments.

小红帽 2024-09-19 00:39:13

由于您没有显示初始化 _gc 的代码,我猜测这就是您发生 NullReferenceException 的地方。

或者是 _gc.ChargeCancellation() 内部的某些内容引发了异常。

如果您包含异常的完整文本,这可能会有所帮助,这样我们就可以准确地知道抛出异常的位置。

Since you show no code to initialize _gc, my guess is that is where your NullReferenceException is happening.

Either that or something inside _gc.ChargeCancellation() is throwing the Exception.

It might help if you included the full text of the Exception so we knew exactly where the Exception was being thrown.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文