首页 > 解决方案 > summarize it in 1 line Linq statement?

问题描述

I have this code in my C#, how can I summarize it in 1 line Linq statement?

        if (UpdatedUser.ModifiedById != 0)
        {
             UpdatedUser = await DbContext.Users.FirstOrDefaultAsync(x => x.Id == UpdatedUser.ModifiedById);
        }
        else
        {
             UpdatedUser = await DbContext.Users.FirstOrDefaultAsync(x => x.Id == UpdatedUser.CreatedById);
        }

标签: c#linq

解决方案


I'd use a local variable to assign the value to use in the lookup

var lookupId = UpdatedUser.ModifiedById != 0
    ? UpdatedUser.ModifiedById
    : UpdatedUser.CreatedById;
UpdatedUser = await DbContext.Users.FirstOrDefaultAsync(x => x.Id == lookupId);

推荐阅读