我想在theme.VersionStamp上插入另一个null检查。有什么方法可以将其插入SequenceEqual参数内吗?

if (theme.VersionStamp != null)
{
    if (!origTheme?.VersionStamp.SequenceEqual(theme.VersionStamp) ?? false)
    {
        throw new TwConcurrencyException();
    }
}

最佳答案

这不是必需的,因为无论如何,您都要进行空检查if (theme.VersionStamp != null){然后继续。但是您仍然可以再次检查并传入默认参数,例如

if (!origTheme?.VersionStamp.SequenceEqual(theme.VersionStamp ?? new VersionStamp()) ?? false)


另外,我会将您的第一个null检查扩展到下面

if (theme != null && theme.VersionStamp != null)
{

关于c# - 空传播-第二个空检查,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44624734/

10-11 10:34