ОБНОВЛЕНИЕ: Эта ссылка имеет решение: Объединение строк NHibernate / MySQL
Будет ли строка foo
в .Contains(foo)
когда-либо содержать пробел? Если нет, попробуйте второй предикат Аде, поскольку он позволяет избежать конкатенации.
Если это не сработает, возможно, вам придется извлечь из базы данных больше объектов, чем вам нужно, и отфильтровать их в коде. Если вам нужно сделать это, возможно, стоит использовать начальный предикат, такой как x => x.Address1.Contains(foo[0]) || x.Address2.Contains(foo[0])
, чтобы ограничить количество возвращаемых объектов. Я оставляю вам возможность придумать лучший начальный предикат, чем этот.