如何显示ASP.NET MVC 3表中的所有记录

时间:2012-04-01 12:39:17

标签: asp.net database asp.net-mvc-3 sql-server-2008

我有这个表的数据库(TableToDo):

http://goo.gl/NlTEk

我希望在TableToDo中显示所有记录login==Joe

我显示的所有记录如下: 控制器:

ASPNETDBEntities __db = new ASPNETDBEntities();
public ActionResult Index(TableToDo obj)
{
    var th = (from TableToDo in __db.TableToDo select TableToDo).ToList();

    return View(th);
}

和强类型视图(列表):

@foreach (var item in Model)
{
    <tr>
        <td>
            @Html.DisplayFor(modelItem => item.text)
        </td>
        <td>
            @Html.ActionLink("x", "Delete", new { id = item.id })
        </td>
    </tr>
}

请告诉我如何在TableToDo中显示所有记录,其中login == Joe?

3 个答案:

答案 0 :(得分:3)

从数据源获取数据时必须这样做。因此,请将您的查询更新为

 var th = (from TableToDo in __db.TableToDo where TableToDo.Login="Joe" select TableToDo).ToList();

答案 1 :(得分:1)

也许是这样的:

var th = (
            from TableToDo in __db.TableToDo 
            where TableToDo.Login=="Joe" 
            select TableToDo
         ).ToList();

修改

或者您想使用该功能的输入。那么也许是这样的:

var th = (
            from TableToDo in __db.TableToDo 
            where TableToDo.id==obj.id
            select TableToDo
         ).ToList();

或者如果你想用名称来加工对象:

var th = (
            from TableToDo in __db.TableToDo 
            where TableToDo.Login==obj.Login
            select TableToDo
         ).ToList();

答案 2 :(得分:0)

非常简单:)让我们假设您有一个简单的POCO类记录:

 public class Record
{
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
 }

此类通过db context引用数据库表记录:

 public class Context : DbContext
{
    public Context() : base("DefaultConnection")
    {
    }

    public DbSet<Record> Records { get; set; }
}

然后在控制器中,您只需创建一个新的Context对象,然后通过它获取Record table中的所有记录:

Context context = new Context();
List<Record> records = context.Records.ToList();