linq 查询数据

        /// <summary>
/// 汽车品牌及车型
/// </summary>
/// <returns></returns>
public string GetCarBrandSeries()
{
var result = from a in db.CR_BC_BRAND
join c in db.CR_BC_BRAND_SERIES on a.CR_BC_BRAND_ID equals c.CR_BC_BRAND_ID
select new
{
id = c.CR_BC_BRAND_SERIES_ID,
name = a.BRAND_NAME + c.SERIES_NAME
};
var JsonData = jsz.Serialize(result);
return JsonData;
} /// <summary>
/// 城市信息
/// </summary>
/// <returns></returns>
public string CarInfo()
{
//linq联合查询。
var fromCityList = from a in db.CR_BC_CITY
join b in db.CR_BC_STORE on a.CR_BC_CITY_ID equals b.CR_BC_CITY_ID
join c in db.CR_BE_CAR_RENTAL on b.CR_BC_STORE_ID equals c.CR_BC_STORE_ID
join d in db.CR_BE_TAILWIND_CAR_RENTAL on c.CR_BE_CAR_RENTAL_ID equals d.CR_BE_CAR_RENTAL_ID
select a; //linq联合查询。
var toCityList = from a in db.CR_BC_CITY
join b in db.CR_BE_TAILWIND_CAR_RENTAL on a.CR_BC_CITY_ID equals b.CR_BC_CITY_ID
select a; var humpPinyinsList = from a in fromCityList join b in toCityList on a.CR_BC_CITY_ID equals b.CR_BC_CITY_ID select new { a.HUMP_PINYINS };
foreach (var v in humpPinyinsList)
{
//这里用到了用split切割字符串。 humpPinyins = v.HUMP_PINYINS.Split(',').ToList();
} //将fromCityList(表) 与toCityList(表) 用Concat方法连接起来 然后用Distinct方法去除反复数据
var allCity = from a in fromCityList.Concat(toCityList).Distinct()
select new
{
capitalcity = a.CAPITAL_CITY,//是否为省会城市
code = a.CR_BC_CITY_ID,//城市ID
enName = a.EN_NAME,
flag = 1,
home = false,
humpPinyins, //城市名称缩写序列
municipality = a.MUNICIPALITY,
name = a.CITY_NAME,
newflag = false,
szm = db.CR_BC_STORE.Where(r=>r.CR_BC_CITY_ID==a.CR_BC_CITY_ID).Count()+"家门店",
top = a.ISTOP,
tour = a.ISTOUR,
}; var fromCity = from a in fromCityList.Distinct() select new
{
capitalcity = a.CAPITAL_CITY,
code = a.CR_BC_CITY_ID,
enName = a.EN_NAME,
flag = 1,
home = false,
humpPinyins,
municipality = a.MUNICIPALITY,
name = a.CITY_NAME,
newflag = false,
opening_time = "",
szm = db.CR_BC_STORE.Where(r => r.CR_BC_CITY_ID == a.CR_BC_CITY_ID).Count() + "家门店",
top = a.ISTOP,
tour = a.ISTOUR,
}; var toCity = from a in toCityList.Distinct()
select new
{
citys = new
{
capitalcity = a.CAPITAL_CITY,
code = a.CR_BC_CITY_ID,
enName = a.EN_NAME,
flag = 1,
home = false,
humpPinyins ,
municipality = a.MUNICIPALITY,
name = a.CITY_NAME,
newflag = false,
opening_time = "",
szm = db.CR_BC_STORE.Where(r => r.CR_BC_CITY_ID == a.CR_BC_CITY_ID).Count() + "家门店",
top = a.ISTOP,
tour = a.ISTOUR,
},
fromCityId = a.CR_BC_CITY_ID,
}; var x = new { allCity, fromCity, toCity }; var jsonData = jsz.Serialize(x);
return jsonData;
}

构造出来的对象 转成js格式

{
"allCity": [
{
"capitalcity": true,
"code": 2,
"enName": "guagnzhou",
"flag": 1,
"home": false,
"humpPinyins": [
"GZ"
],
"municipality": false,
"name": "广州",
"newflag": false,
"szm": "2家门店",
"top": true,
"tour": true
},
{
"capitalcity": true,
"code": 3,
"enName": "shenzhen",
"flag": 1,
"home": false,
"humpPinyins": [
"GZ"
],
"municipality": false,
"name": "深圳",
"newflag": false,
"szm": "0家门店",
"top": true,
"tour": true
}
],
"fromCity": [
{
"capitalcity": true,
"code": 2,
"enName": "guagnzhou",
"flag": 1,
"home": false,
"humpPinyins": [
"GZ"
],
"municipality": false,
"name": "广州",
"newflag": false,
"opening_time": "",
"szm": "2家门店",
"top": true,
"tour": true
}
],
"toCity": [
{
"citys": {
"capitalcity": true,
"code": 2,
"enName": "guagnzhou",
"flag": 1,
"home": false,
"humpPinyins": [
"GZ"
],
"municipality": false,
"name": "广州",
"newflag": false,
"opening_time": "",
"szm": "2家门店",
"top": true,
"tour": true
},
"fromCityId": 2
},
{
"citys": {
"capitalcity": true,
"code": 3,
"enName": "shenzhen",
"flag": 1,
"home": false,
"humpPinyins": [
"GZ"
],
"municipality": false,
"name": "深圳",
"newflag": false,
"opening_time": "",
"szm": "0家门店",
"top": true,
"tour": true
},
"fromCityId": 3
}
]
}

使用Linq 查询数据 构建对象 select new{}的更多相关文章

  1. 2.3 LINQ查询表达式中 使用select子句 指定目标数据

    本篇讲解LINQ查询的三种形式: 查询对象 自定义查询对象某个属性 查询匿名类型结果 [1.查询结果返回集合元素] 在LINQ查询中,select子句和from子句都是必备子句.LINQ查询表达式必须 ...

  2. 使用LINQ查询数据实例和理解

    使用LINQ查询数据实例和理解 var contacts= from customer in db.Customers where customer.Name.StartsWith("A&q ...

  3. LINQ GroupBy 查询数据赋给select

    roles.GroupBy(a => new { a.SubjectID,a.SubjectName}).Select(p => new SelectListItem() { Value ...

  4. 【MySQL】SELECT语句 - 查询数据

    第4章 检索数据 文章目录 第4章 检索数据 1.SELECT语句 2.检索单个列 3.检索多个列 4.检索所有列 5.检索不同的行 6.限制结果 7.使用完全限定的表名 8.小结 简单记录 - My ...

  5. Linq查询操作之投影操作

    投影操作,乍一看不知道在说啥.那么什么是投影操作呢?其实就是Select操作,名字起的怪怪的.和Linq查询表达式中的select操作是一样的.它能够选择数据源中的元素,并指定元素的表现形式.投影操作 ...

  6. Unity3D C#中使用LINQ查询(与 SQL的区别)

    学过SQL的一看就懂 LINQ代码很直观 但是,LINQ却又跟SQL完全不同 首先来看一下调用LINQ的代码 int[] badgers = {36,5,91,3,41,69,8}; var skun ...

  7. 【总结】LINQ查询基本操作列表

    每个LINQ查询都以from子句开始,from子句包括以下两个功能. 指定查询将采用数据源. 定义一个本地变量,表示数据源中单个元素. string[] values = { "中国&quo ...

  8. Linq查询基本操作

    摘要:本文介绍Linq查询基本操作(查询关键字) - from 子句 - where 子句 - select子句 - group 子句 - into 子句 - orderby 子句 - join 子句 ...

  9. PL/SQL查询oracle数据库对象

    dictionary 全部数据字典表的名称和解释,它有一个同义词dict,dict_column 全部数据字典表里字段名称和解释 如果我们想查询跟索引有关的数据字典时,可以用下面这条SQL语句: se ...

随机推荐

  1. Elasticsearch之CURL命令的DSL查询

    它是Domain Specific Language领域特定语言. https://www.elastic.co/guide/en/elasticsearch/reference/current/in ...

  2. Linux查找目录下的按时间过滤的文件

    在维护项目中,有时会指定都一些条件进行过滤文件,并对该批文件进行操作:这时我们将使用shell命令进行操作:直接上代码 #!/bin/sh #BEGIN #`find ./ ! -name " ...

  3. python框架之Flask基础篇(二)-------- 数据库的操作

    1.flask连接数据库的四步: 倒入第三方数据库扩展包:from flask_sqlalchemy import SQLAlchemy 配置config属性,连接数据库: app.config[&q ...

  4. 国内外知名IT科技博客

    国内 1.36氪(www.36kr.com): 目前国内做的最风生水起的科技博客,以介绍国内外互联网创业新闻为主的博客网站,自己建立有36Tree互联网创业融投资社区.36氪的名字源于元素周期 表的第 ...

  5. 安卓发送图片文字,java后台接收

    安卓使用retrofit2 和rxjava2 url: @Multipart @POST(UrlTools.STORYUPLOAD) Observable<Result> saveRepo ...

  6. Coding iOS客户端应用源码

    Coding是国内的一家提供Git托管服务的产品,它们的客户端提供了项目和任务管理.消息和用户中心,以及一个类似论坛的功能,已经在App Store上线: https://itunes.apple.c ...

  7. Html test

    <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> ...

  8. IOS内购--后台PHP认证

    参考网址:https://blog.csdn.net/que_csdn/article/details/80861408 http://www.php.cn/php-weizijiaocheng-39 ...

  9. php连接数据库的两种方式

    一.mysqli方式连接数据库 $mysql_conf = array( 'host' => 'localhost:3306', 'db' => 'ssql', 'db_user' =&g ...

  10. 28 I/O限制的异步操作

    28.2 C#的异步函数 private static async Task<string> IssueClientRequestAsync(string serverName, stri ...