のように書くことができます
IQueryable query = from staff in dataContext.Staffs;
query = from staff in query where (name1 != null && staff.name == name1);
このように、最初の条件が false と評価された場合、条件の 2 番目の部分は評価されません
更新:
書いたら
IQueryable query = from staff in dataContext.Staffs;
query = from staff in query where (name1 == null || staff.name == name1);
name1 が null であり、条件の 2 番目の部分は評価されません。or 条件が true を返すには 1 つの条件しか必要としないためです
こちらのリンク をご覧ください 詳細については