Спасибо за помощь, но во всех случаях выходит ошибка при поиске. Ошибка такая же как и моём третьем варианте.
LINQ to Entities does not recognize the method 'System.String[] Split(Char[])' method, and this method cannot be translated into a store expression.
Возникает при возврате значения
return View(movies.ToList().ToPagedList(pageNumber, pageSize));
Вот сам метод
public ActionResult Index(string movieTitle, string movieGenre, string movieActors, int? page)
{
int pageSize = 10; int pageNumber = (page ?? 1); //Настройки постраничной навигации (кол-во страниц/страница по умолчанию)
var movies = from m in db.FilmsTables
select m;
if (!string.IsNullOrEmpty(movieActors))
{
//movies = movies.Where(x => x.Actors.Contains(movieActors));
//movies = movies.Where(x => arr.Contains(movieActors));
//movies = movies.Where(x => x.Actors.Split(' ').Contains(movieActors));
movies = movies.Where
(
x =>
!String.IsNullOrEmpty(x.Actors) &&
x.Actors.Split(',').Select(a => a.Trim()).Any((actor) => actor.Equals(movieActors))
);
}
return View(movies.ToList().ToPagedList(pageNumber, pageSize));
}