asp.net – LINQ to SQL – 如何选择特定的列和返回强类型列表
发布时间:2020-05-23 05:26:20 所属栏目:asp.Net 来源:互联网
导读:我试图使用LINQ to SQL从表中选择几个特定的列,并返回结果作为强类型的对象列表。 例如: var result = (from a in DataContext.Persons where a.Age 18 select new Person
|
我试图使用LINQ to SQL从表中选择几个特定的列,并返回结果作为强类型的对象列表。 例如: var result = (from a in DataContext.Persons
where a.Age > 18
select new Person
{
Name = a.Name,Age = a.Age
}
).ToList();
任何帮助将不胜感激。 它构建正常,但当我运行它,我得到的错误。不允许在查询中显式构造实体类型MyEntity。 解决方法基本上你是做正确的方式。但是,您应该使用DataContext的实例进行查询(DataContext不是一个实例或查询中的类型名称并不明显):var result = (from a in new DataContext().Persons
where a.Age > 18
select new Person { a.Name,a.Age }).ToList();
显然,Person类是你的LINQ to SQL生成的实体类。如果你只想要一些列,你应该创建自己的类: class PersonInformation {
public string Name {get;set;}
public int Age {get;set;}
}
var result = (from a in new DataContext().Persons
where a.Age > 18
select new PersonInformation { a.Name,a.Age }).ToList();
你可以自由交换var与List< PersonInformation>这里不影响任何东西(因为这是编译器做的)。 否则,如果你在本地使用查询,我建议考虑一个匿名类型: var result = (from a in new DataContext().Persons
where a.Age > 18
select new { a.Name,a.Age }).ToList();
注意,在所有这些情况下,结果是静态类型的(它的类型在编译时是已知的)。后一种类型是一个编译器生成的匿名类的列表,类似于我上面写的PersonInformation类。从C#3.0开始,语言中没有动态类型。 更新: 如果您真的要返回List< Person> (这可能是或可能不是最好的事情),你可以这样做: var result = from a in new DataContext().Persons
where a.Age > 18
select new { a.Name,a.Age };
List<Person> list = result.AsEnumerable()
.Select(o => new Person {
Name = o.Name,Age = o.Age
}).ToList();
你也可以合并上面的语句,但为了清楚起见我把它们分开了。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- dropdownlist事件不显示在属性窗口asp.net Visual Studio 2
- asp.net-mvc – MVC应用程序的布局/设计模板?
- asp.net-mvc – 如何在View中获取当前的url值
- ASP.NET“死亡黄屏”如何显示代码?
- asp.net-mvc – Visual Studio提示使用Razor语法1.0安装ASP
- asp.net – 设置gridview标题颜色
- asp.net – 如何在Button Click事件上调用此Jquery函数?
- asp.net-mvc – 对Json解决方法的EntityFramework? (序列化
- asp.net – 路径’PROPFIND’被禁止?
- asp.net – AspNetSynchronizationContext
推荐文章
站长推荐
- asp.net – 映射到用户的SignalR连接
- 在asp.net MVC Javascript事件中没有命中断点
- asp.net-identity – 使用SQL Server而不是Local
- asp.net-mvc – MVC 4. IIS 7.5 PUT返回405
- asp.net-mvc – MVC5 – 数据注释 – 客户端验证
- asp.net-web-api – SelfHosted AspNet WebAPI与
- asp.net – ASP:ItemTemplate中的DropDownList:
- ASP.NET UserControl类库
- asp.net-mvc – 从MVC控制器调用异步方法
- asp.net-mvc – 在没有EF的情况下在appsettings.
热点阅读
