1

我是 Telerik OpenAccess ORM 的新手,并使用数据库优先方法用于 MVC 项目。我在他们的网站上浏览了这个关于模型的教程视频: http ://tv.telerik.com/watch/orm/building-a-mvc-3-application-database-first-with-openaccess-creating-model?seriesID= 1529

我很想知道如何从 Modal 扩展域类和查询数据库?例如,我有一个生成的“Person”类,我正在使用以下类对其进行扩展:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace MVCApplication
{
    public partial class Person
    {
        public string PersonName
        {
            get
            {
                return this.FirstName + " " + this.LastName;
            }
        }
    }
}

这与上面视频中显示的示例非常相似。我很好奇是否可以从满足特定条件的 Person 表或 Person 对象集合中检索所有记录?我的“退货”查询将如何?我在这个扩展的模型类中没有可用的 dbContext :(

public List<Person> GetAllPeople()
{
// return List here
}

public List<Person> GetAllPeopleFromLocationA(int locationID)
{
//return List here
}
4

1 回答 1

2

一般来说,域类并不意味着查询数据库,我建议您在域上下文的部分类中添加GetAllPeopleGetAllPeopleFromLocationA方法,如下所示:

public List<Person> GetAllPeople()
{
    return this.People.ToList();
}

public List<Person> GetAllPeopleFromLocationA(int locationID)
{
    return this.People.Where(p => p.LocationID == locationID).ToList();
}

那么您可以使用以下方法:

using (YourContextName context = new YourContextName())
{
    foreach (Person person in context.GetAllPeople())
    {
        // you could access your custom person.PersonName property here
    }

    foreach (Person person in context.GetAllPeopleFromLocationA(someLocationID))
    {
        // you could access your custom person.PersonName property here
    }
}
于 2013-04-10T08:48:59.393 回答