var query = (from u in results select u).AsQueryable(); //Build where clause if (!string.IsNullOrEmpty(userRequest.searchData)) { if (userRequest.searchBy == "LastName") { var likestr = userRequest.searchData.Trim(); query = (from n in query where n.StartsWith(likestr) select n).AsQueryable(); } if (userRequest.searchBy == "FirstName") { } if (userRequest.searchBy == "Email") { //var likestr = string.Format("%{0}%", userRequest.searchData.Trim()); } if (userRequest.searchBy == "UserId") { query = query.Where(x => SqlMethods.Equals(x.UserId, Convert.ToInt32(userRequest.searchData))); } }
Zuerst Abfrage ich die DB und in var Abfrage speichern.ASP.NET Dynamische Linq-Suche
Dann, wenn es Suchdaten gibt, versuche ich, die Where-Klausel mit 1 oder 4 möglichen Suchen zu heften.
Hilfe?
Er wollte nur die Namen mit dem Uservalue beginnen. – Christian