【发布时间】:2021-04-08 17:00:02
【问题描述】:
所以我对 MVC 真的很陌生。我一直在为工作中的一个项目自学。
我正在尝试从我的 SQL 数据库中将我的列表打印到我的网页中,以获取一些库存项目,但我不断收到此错误:
“无法将 lambda 表达式转换为类型 'string',因为它不是委托类型”
我知道有一些表格表明添加了一些 using 语句,即使尝试了一些解决方案,我仍然遇到问题。
我的控制器如下所示:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using LinqApplication.Models;
using System.Data.SqlClient;
using System.Configuration;
using System.Data.Entity;
namespace LinqApplication.Controllers
{
public class InventoryItemController : Controller
{
// GET: InventoryItem
public ActionResult Index()
{
IM_importEntities import = new IM_importEntities(); //our object to work with
List<InventoryItem> items = import.inventory_items.Where(x => x.itemnum == "480-15").Select(x => new InventoryItem{itemnum =x.itemnum}).ToList(); //x commands
items.ToList().ForEach(x => Console.WriteLine(x.itemnum)); //foreach loop for items
return View(items.ToList());
}
}
}
我的观点是这样的:
@model List<LinqApplication.Models.InventoryItem>
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
<table class="table">
<tr>
<th>
@Html.DisplayName(model => model.itemnum)
</th>
</tr>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.itemnum)
</td>
</tr>
}
</table>
错误在以下位置加了下划线: @Html.DisplayFor(modelItem => item.itemnum)
有人对如何解决这个问题有任何想法吗?
提前谢谢你!
【问题讨论】:
-
试试这里的一些答案:stackoverflow.com/questions/2058487/…
-
是的,这就是我用来尝试解决问题的方法。我找不到任何有助于解决我正在寻找的东西的东西。我尝试了“使用”命令,我尝试更改一些语句,但它仍然回到这个错误。谢谢!
标签: c# linq controller