三、数据API-3
预备
返回格式需要包括:
// Code 状态码(200,400等)
// Mgs 提示信息(邮箱格式不正确;数据返回成功等)
// Result 返回数据
一、WebAPI与传统MVC的区别是 MVC是 ActionResule /WebAPI则是自定义接口返回的格式
/// <summary>
/// 院校库
/// </summary>
/// <returns></returns>
[Route("GetUniversityLibByPager")]
[HttpPost]
public WebApiResponseCommonDTO GetUniversityLibByPager()
{
var hs = new WebApiResponseCommonDTO();
string[] category = new string[] { "985", "211", "双一流", "全国重点" };
string[] nature = new string[] { "公立", "私立" };
try
{
var arrProvinceInfo = _ProvinceInfo.Get().Select(o => o.YD_ProvinceName).ToList();
var arrUniversityInfo = _UniversityInfo.GetUtypeList().ToList(); var data = new List<object>();
data.Add(new
{
Category = category,
Nature = nature,
ProvinceInfo = arrProvinceInfo,
UniversityInfo = arrUniversityInfo
});
hs.Result = data;
hs.Code = true;
hs.Msg = "成功";
}
catch (InvalidCastException ex)
{
Log4NetHelper.WriteError("------获取院校库失败------" + ex.ToString(), DevAuthorNameEnum.SongShan);
hs.Code = false;
hs.Msg = "失败";
}
return hs;
}
二、EF的方式读取到数据从var变量中取值放在MajorAndClassInfo对象中
var MajorInfo = yd_Umm.GetUniversityMapMajorAndClassInfo(query.Id);//这是数据库读取的
if (MajorInfo.Count() > 0)
{
universitydto.MajorInfo = MajorInfo.Select(w => new MajorAndClassInfo //遍历数据库每一行 将每一行的列值从新指定
{
YD_MajorId = w.YD_MajorId,
YD_MajorClassName = w.YD_MajorClassName,
YD_MajorTitle = w.YD_MajorTitle,
//YD_MajorTitle = yd_MajorInfo.GetSingle(w.YD_MajorId).YD_MajorName
}).ToList();
}
三、order by方式
List<UniversalInfo> list =new List<UniversalInfo>();
list = (from n in dbEntities.UniversalInfo
where n.UniTypeId == unitypeid && n.IsFlag == 1
orderby n.CreateTime descending
select new
{
UniInfoId = n.UniTypeId, UniInfoTitle = n.UniInfoTitle, CreateTime = n.CreateTime
}).ToList().Select(a=>new UniversalInfo
{
UniTypeId = a.UniInfoId,
UniInfoTitle = a.UniInfoTitle,
CreateTime = a.CreateTime
}).ToList();
return list;
四、基于EF的linq 查询Select多字段
var Pro = _profession.Get().Where(o => o.YD_ProfessionTitle == ProfessionTitle).ToList().Select(o=> new{ o.YD_ProfessionTitle,o.YD_Icofont,o.YD_Introduce }).Distinct(); //多字段要new,因为通过名字查询 ==非like 所以 Distinct()一下
var classname = _yd_Class.Get(x => x.Id == Guid.NewGuid()).FirstOrDefault().YD_ClassName; //获取班级 列在后面
五、接触写sql的地方
List<SqlParameter> ilist = new List<SqlParameter>();
ilist.Add(new SqlParameter("@Param1", "1"));
ilist.Add(new SqlParameter("@Param2", "2"));
ilist.Add(new SqlParameter("@Param3", "3"));
ilist.Add(new SqlParameter("@Param4", "4"));
ilist.Add(new SqlParameter("@ParamLike","%5%"));//Like的写法
SqlParameter[] param = ilist.ToArray(); List<string> listWhere = new List<string>();
List<SqlParameter> listParameters = new List<SqlParameter>();
if (cbName.Checked)
{
listWhere.Add("Name like @name");
listParameters.Add(new SqlParameter("name","%"+txtQueryName.Text+"%"));
}
if (cbMobile.Checked)
{
listWhere.Add("MobilePhone like @mobile");
listParameters.Add(new SqlParameter("mobile", "%" + txtQueryMobile.Text + "%"));
}
string sql = "select * from T_Customers\n"; if (listWhere.Count > 0)
{
string sqlWhere = string.Join(" and ", listWhere.ToArray());
sql =sql+" where "+sqlWhere;
}
dataGridView1.DataSource = SqlHelper.ExecuteDataTable(sql, listParameters.ToArray());
三、数据API-3的更多相关文章
- Navisworks 提供了.NET, COM和NwCreate 三种API
Navisworks 提供了.NET, COM和NwCreate 三种API.而通常我们说Navisworks API其实指的只是COM或.NET,因为NwCreate的功能比较特殊.待我一一道来: ...
- 中国天气预报数据API收集
{"weatherinfo":{"city":"北京","cityid":"101010100" ...
- Apache Spark 2.0三种API的传说:RDD、DataFrame和Dataset
Apache Spark吸引广大社区开发者的一个重要原因是:Apache Spark提供极其简单.易用的APIs,支持跨多种语言(比如:Scala.Java.Python和R)来操作大数据. 本文主要 ...
- 使用聚合数据API查询快递数据-短信验证码-企业核名
有位朋友让我给他新开的网站帮忙做几个小功能,如下: 输入快递公司.快递单号,查询出这个快件的所有动态(从哪里出发,到了哪里) 在注册.登录等场景下的手机验证码(要求有一定的防刷策略) 通过输入公司名的 ...
- Vue.js 组件的三个 API:prop、event、slot
组件的构成 一个再复杂的组件,都是由三部分组成的:prop.event.slot,它们构成了 Vue.js 组件的 API.如果你开发的是一个通用组件,那一定要事先设计好这三部分,因为组件一旦发布,后 ...
- Zepto源代码分析之二~三个API
因为时间关系:本次仅仅对这三个API($.camelCase.$.contains.$.each)方法进行分析 第一个方法变量转驼峰:$.camelCase('hello-world-welcome' ...
- 数字货币比特币以太坊买卖五档行情数据API接口
数字货币比特币以太坊买卖五档行情数据API接口 数字货币一般包含比特币BTC.以太坊ETH.瑞波币XRP.泰达币USDT.比特币现金BCH.比特币SV.莱特币LTC.柚子币EOS.OKB. ...
- grape动态PHP结构(三)——API接口
一.app视图与控制器
- 免费股票数据API接口
免费股票数据API接口提供沪深.香港.美国股市信息. 1.沪深股市 2.香港股市 3.美国股市 4.香港股市列表 5.美国股市列表 6.深圳股市列表 7.沪股列表 API文档:https://www. ...
- C#调用金数据API
首先,吐槽一下金数据的API文档 http://help.jinshuju.net/articles/api-intro.html写的很粗糙啊...反正我是没太看明白 拿表单api举例,只告诉你了个地 ...
随机推荐
- 多线程(5)async&await
.net 4.0的Task已经让我们可以非常简单地使用多线程,并且可以有返回值,也可以支持线程的取消等操作,可谓已经很强大了.但.net 4.5为我们带来了async&await,使得实现多线 ...
- Asp.Net MVC WebAPI的创建与前台Jquery ajax后台HttpClient调用详解
1.什么是WebApi,它有什么用途? Web API是一个比较宽泛的概念.这里我们提到Web API特指ASP.NET MVC Web API.在新出的MVC中,增加了WebAPI,用于提供REST ...
- 01-css的引入方式
[转]01-css的引入方式 引入css方式(重点掌握) 行内样式 内接样式 外接样式 3.1 链接式 3.1 导入式 css介绍 现在的互联网前端分三层: HTML:超文本标记语言.从语义的角度描述 ...
- 网络最大流算法—最高标号预流推进HLPP
吐槽 这个算法.. 怎么说........ 学来也就是装装13吧.... 长得比EK丑 跑的比EK慢 写着比EK难 思想 大家先来猜一下这个算法的思想吧:joy: 看看人家的名字——最高标号预留推进 ...
- 怎么打开iPhone的开发者模式
1.需要连接Xcode 2.打开一个app就有了
- 关于Keychain
1.Keychain 浅析 2.iOS的密码管理系统 Keychain的介绍和使用 3.iOS开发中,唯一标识的解决方案之keyChain+UUID
- iOS---------显示和隐藏状态栏的网络活动标志
//在向服务端发送请求状态栏显示网络活动标志: [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES]; ...
- Easyui datagrid 设置内容超过单元格宽度时自动换行显示
datagrid 设置内容超过单元格宽度时自动换行显示 by:授客 QQ:1033553122 测试环境 jquery-easyui-1.5.3 问题描述 单元格内容超过单元格宽度不会自动化换行.如下 ...
- MySQL 基础知识梳理学习(四)----GTID
在日常运维中,GTID带来的最方便的作用就是搭建和维护主从复制.GTID的主从模式代替了MySQL早期版本中利用二进制日志文件的名称和日志位置的做法,使用GTID使操作和维护都变得更加简洁和可高. 1 ...
- per-CPU变量
为什么需要per-CPU变量 假设系统中有4个cpu, 同时有一个变量在各个CPU之间是共享的,每个cpu都有访问该变量的权限. 当cpu1在改变变量v的值的时候,cpu2也需要改变变量v的值.这时候 ...