2012-04-26 106 views
0

也许我的问题标题不是正确的,但不好描述我的观点。从linq到sql的自定义选择参数

可以说我有数据库表:

  • 名称
  • 电话
  • 位置

我可以查询从该表中得到一些结果与此代码

DALDataContext context = GetContext(); 
var result = new List<Users>; 
var result = (from users in context.Users where Name = "test" select users).ToList(); 

但是,如果我只需要名称和姓氏,这个查询给我所有的表信息(名称,姓氏,电话和位置)。我想如果我只需要名字和姓氏,并且只查询名称和姓氏,这会提高我的表现。

如何使自定义查询ToList()仅用于名称和姓氏?

ASP.NET 4.0 C#

回答

2

要选择填充了这些领域的用户对象的列表:

var result = (
    from user in context.Users 
    where Name = "test" 
    select new User {Name = user.Name, Surname = user.Surname}).ToList(); 

要返回一个列表匿名类型:

var result = (
    from user in context.Users 
    where Name = "test" 
    select new {user.Name, user.Surname}).ToList(); 
+0

谢谢,我是如此亲密:) – 2012-04-26 22:40:57

3

也许你可以试试这个:

var result = (from users in context.Users 
       where Name = "test" 
       select new User { users.Name, users.Surname }).ToList();