Какой смысл делать concat в SQL? Вы можете сделать это в проекции, когда получите данные:
var query = from foo in db.Foo
select new { foo.X, foo.Y };
var result = from foo in query.AsEnumerable()
select foo.X.ToString() + foo.Y.ToString();
Я хотел бы знать, как я могу реализовать эту функцию самостоятельно и добавить ее в инфраструктуру L2E.
Я не думаю, что это возможно, если вы не хотите реализовать свой собственный EF-провайдер ...