Как взять декартовое соединение двух списков в c #?

Как взять декартовое объединение двух списков с целыми числами?

Можно ли это сделать с помощью linq?

Предполагая, что вы имеете в виду «кросс-соединение» или «декартовое соединение»:

var query = from x in firstList from y in secondList select new { x, y } 

Или же:

 var query = firstList.SelectMany(x => secondList, (x, y) => new { x, y }); 

Если вы хотите что-то еще (как вы можете видеть из комментариев, термин «перекрестный продукт» вызвал некоторую путаницу), пожалуйста, отредактируйте свой вопрос соответствующим образом. Пример будет очень удобен 🙂

Для любопытства другой способ добиться этого (который дает тот же результат, что и ответ Джона Скита):

 firstList.Join(secondList, x => true, y => true, (m, n) => new { m, n });