ASP.NET CORE 3 入門 という書籍を購入し、
240ページで 困っています。内容です。
Model を作成
namespace SampleMVCApp.Models { public class Person { public int PersonId { get; set; } public string Name { get; set; } public string Mail { get; set; } public int Age { get; set; } } }
スキャホールディングまで実施→OK
Findページ 検索ページを
追加 - ビュー Razorビューにて追加
Viewページ
Find.cshtml
@model IEnumerable<SampleMVCApp.Models.Person> @{ ViewData["Title"] = "Find"; } <h1>Find</h1> <form asp-page="Find"> <div class="row"> <input type="text" name="find" class="col-10 form-control" /> <input type="submit" value="Find" class="col-2 btn btn-primary" /> </div> </form> <table class="table mt-5"> <thead> <tr> <th>PersonId</th> <th>Name</th> <th>Mail</th> <th>Age</th> </tr> </thead> <tbody> @foreach (var item in Model.People) { <tr> <td> @Html.DisplayFor(modelItem => item.PersonId) </td> <td> @Html.DisplayFor(modelItem => item.Name) </td> <td> @Html.DisplayFor(modelItem => item.Mail) </td> <td> @Html.DisplayFor(modelItem => item.Age) </td> </tr> } </tbody> </table>
Controllers 追加
public async Task<IActionResult> Find() { return View(await _context.Person.ToListAsync()); } [HttpPost] [ValidateAntiForgeryToken] public async Task<IActionResult> Find(string find) { var People = await _context.Person.Where(m => m.Name == find).ToListAsync(); return View(People); }
ビューページの
@foreach (var item in Model.People)
にて、People 箇所でエラーとなり
CS1061 ‘IEnumerable<Person>’ に ‘People’ の定義がふくまれておらず、型 ‘IEnumerable<Person>’の最初の引数を受け付けるアクセス可能な拡張メソッド’People’がみつかりませんでした。
を解決できずにこまっています。
どなたか、この対応方法をご存知の方がいましたら助かります。
回答2件
あなたの回答
tips
プレビュー