私たちのウェブサイトへの検索機能の1つは、1ページで処理するには非常に多くの結果を返すので、ここで提供されるページング機能を追加しようとしています:https ://github.com/TroyGoode/PagedList
ソリューションは適切にビルドされ、ページも読み込まれますが、検索を実行しようとすると、ページのcontroller / Index()メソッドで「NotSupportedException」がスローされます。
The method 'Skip' is only supported for sorted input in LINQ to Entities. The method 'OrderBy' must be called before the method 'Skip'.
Visual Studio 2010は、この例外がスローされたときにreturnステートメントを指します。ASP MVCで作業するのはこれが2日目なので、あらゆる提案を歓迎します。ありがとうございました!
case "name":
//if no comma, do a combined search by last name and by corporate name.
searchString = searchString.ToUpper();
var lastAgents =
db.Agent.OrderBy(s => s.LastName).Where(s => s.LastName.ToUpper().StartsWith(searchString)).Include(
a => a.AgentIdentification).Include(a => a.SymetraNumberToAgentId);
//end new code
var corp2Agents =
db.Agent.OrderBy(s => s.CorporateName).Where(s => s.CorporateName.ToUpper().StartsWith(searchString)).Include(
a => a.AgentIdentification);
if ((corp2Agents.Count() == 0) & (lastAgents.Count() == 0)) ViewBag.ErrorMessage = "None found in search for Last Names and Companies beginning with " + search1;
else ViewBag.Message = "Results of Last Name and Company Name search. Found " + (corp2Agents.Count() + lastAgents.Count()).ToString();
pageNumber = (page ?? 1);
return View(lastAgents.Union(corp2Agents).ToPagedList(pageNumber, pageSize));