LINQPad 4 初次使用心得
最近学习EntityFramework,于是接触了LinqPad这款享誉已久的软件,深感相见恨晚。软件具体不多做介绍了,只简单介绍下使用方法。
数据库操作
添加数据库连接
1,首先通过点击Add connection打开Choose Data Context窗口
2,选择Defalt(LINQ to SQL)
3,添加数据库连接信息

4,点击OK后,会显示出数据库的表的列表,说明数据库连接创建成功

表达式操作
数据库连接成功后
首先在Query窗口的Connection中选择你要进行过操作的数据库,并且Language选择C# Expression
之后就可以通过LINQ表达式进行数据库查询操作了

1,查询一张表的所有内容
直接输入表名就可以了
比如查询所有菜单,直接使用如下代码即可
MenuInfoes
显示结果如下:

2,使用dump
使用dump可以将输出结果分类显示
MenuInfoes.Dump("所有菜单")
显示结果如下:

3,LINQ操作示例
这里毕竟是软件的介绍,LINQ语法不多介绍了。所有的LINQ语法在LINQPad里都可以使用。
这里简单给出一些示例:
**使用type筛选后,按照价格排序
MenuInfoes.Where(mi=>mi.Type==).OrderBy(mi=>mi.Price)
结果如下:

**所有点菜情况如下
| Id | Date | EmployeeId | MenuId | Count |
| 1 | 2014/2/5 | 1 | 1 | 4 |
| 2 | 2014/2/5 | 1 | 2 | 16 |
| 3 | 2014/2/5 | 1 | 1 | 5 |
| 4 | 2014/2/5 | 1 | 1 | 1 |
那么想要获取每种菜品的总份数,用如下代码
OrderInfoes
.GroupBy(oi=>oi.MenuId)
.Select(g=>new
{
MenuId=g.Key,
SumCount=g.Sum(oi=>oi.Count)
})
结果如下:

代码段操作
LINQPad不仅仅可以通过表达式操作数据库,更可以通过代码段执行任何C#的代码
首先将Language改为C# Program
**简单的输出处理
void Main()
{
DateTime.Now.Dump("Datetime now");
}
输出结果如下:

**LINQPad还可以导入第三方库,甚至可以在程序内使用nuget导入
在query窗口中按F4打开Query Properties窗口,在该窗口可以添加任何本地的第三方程序集
通过点击Add Nuget打开Nuget窗口,然后搜索json.net

之后通过点击Add To Query下载并添加程序集
返回Query Properties后可以发现Json.net已经被添加了

尝试下面的代码:
public class Student
{
public int Id { get; set; }
public Gender Gender { get; set; }
} public enum Gender
{
Male,
Female
} void Main()
{
var student=new Student{
Id=,
Gender= Gender.Male
}; JsonConvert.SerializeObject(student).Dump("serialize student");
}
显示结果为:

最后在LINQPad中写一个稍微复杂的网络操作的例子
public class Weather
{
public Weatherinfo weatherinfo { get; set; }
} public class Weatherinfo
{
public string city { get; set; }
public string cityid { get; set; }
public string temp { get; set; }
public string WD { get; set; }
public string WS { get; set; }
public string SD { get; set; }
public string WSE { get; set; }
public string time { get; set; }
public string isRadar { get; set; }
public string Radar { get; set; }
} void Main()
{
var resetEvent=new AutoResetEvent(false);
var client=new HttpClient();
var rst= client.GetStringAsync("http://www.weather.com.cn/data/sk/101110101.html");
rst.ContinueWith(s=>
{
if(s.Exception==null)
{
var obj=JsonConvert.DeserializeObject<Weather>(s.Result);
Console.WriteLine(obj);
}
else{
Console.WriteLine(s.Exception);
}
resetEvent.Set();
}); resetEvent.WaitOne();
}
显示结果如下:

官方下载地址:http://www.linqpad.net/
免费版没有智能提示,Premium Edition收费。
希望大家多多支持正版,或者在http://download.csdn.net/detail/xnonx/7720177 下载并研究性使用
LINQPad 4 初次使用心得的更多相关文章
- 201671010142 <java程序设计>初次学习心得与感悟
从开始对JDK的配置就遇到了问题,从这点就可以知道自己知识的薄弱.又知道了在控制台下一些常用命令的掌握.对知识的理解挺艰难,比如遇到一个新的问题就不知道该从哪里入手,有时候还不知道到底问题是啥.接受能 ...
- 自我介绍和Github初次使用心得
姓名:许洪科 班级:网络工程142 学号:1413042047 爱好:足球 编写过的程序:0 编写过的代码:几乎为0(大多数为网上直接复制的) Github注册过程:. 1:进入Github网站后点击 ...
- (LaTex)CTex的初次使用心得及入门教程
摘要 最近要发论文了,被知乎里人推荐使用论文编译软件(CTex.LaTex和Overleaf之类),瞬间感觉自己用Word简直Out了(书读少). 学校里也听说过LaTex,不过因为当时没怎么写过论文 ...
- AutoMapper 初次使用心得
本例以asp.net webform为例: 结构: 主要代码:AutoMapperConfig 类 public class AutoMapperConfig { public static void ...
- .Net 常用开发工具
,net常用开发工具 LinqPad使用 LinqPad连接Oracle 使用 LINQPad 将linq转换为 lambda表达式 或者 SQL语句 LINQPad 4 初次使用心得 一.双击 二. ...
- 手机web——自适应网页设计(html/css控制)
一. 允许网页宽度自动调整: "自适应网页设计"到底是怎么做到的? 其实并不难. 首先,在网页代码的头部,加入一行viewport元标签. <meta name=" ...
- 【转】手机web——自适应网页设计(html/css控制)
手机web——自适应网页设计(html/css控制) 就目前形势来看,Web App 正是眼下的一个趋势和潮流,但是,对于Web App的设计可能大家有的不是很了解,下面就将整理好的网页设计的技巧奉献 ...
- 手机web——自适应网页设计(html/css控制) - 51CTO.COM
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- 手机web——自适应网页设计(html/css控制)【转】
一. 允许网页宽度自动调整: "自适应网页设计"到底是怎么做到的?其实并不难. 首先,在网页代码的头部,加入一行viewport元标签. <meta name="v ...
随机推荐
- POJ 3126 primepath bfs
题目链接:http://poj.org/problem?id=3126 题意:1维的坐标轴,给出起点和终点,求从起点到终点变换经历的最短的步数.起点,终点和中间变换的数字都是4位,而且都是质数. 思路 ...
- Nginx笔记02-nginx常用参数配置说明
nginx的主配置文件是nginx.conf,这里主要针对这个文件进行说明 1.主配置文件nginx.conf 2.nginx配置文件的结构 从上面的配置文件中我们可以总结出nginx配置文件的基 ...
- 实现C++标准库string类的简单版本
代码如下: #ifndef STRING_H #define STRING_H #include <cassert> #include <utility> #include & ...
- 各开源 bbs 程序比较
主要是集中在 php 开源轻巧的程序. 搜索到一个逼乎的一个帖子:https://www.zhihu.com/question/20655704 ,顺藤摸瓜 下. carbon forum 第一个测试 ...
- POI2013题解
POI2013题解 只做了BZ上有的\(13\)道题. 就这样还扔了两道神仙构造和一道计算几何题.所以只剩下十道题了. [BZOJ3414][Poi2013]Inspector 肯定是先二分答案,然后 ...
- DecimalFormat格式化数字
DecimalFormat格式化数字 DecimalFormat类也是Format的一个子类,主要作用是格式化数字.当然,在格式化数字时要比直接使用NumberFormat更加 方便,因为可以直接指定 ...
- timescaledb replication 使用
replication 可以确保系统的ha 以及lb 数据的查询,timesacledb 使用pg 内置的stream replication 进行复制的支持 docker 运行参考 https:// ...
- 【linux】linux DD命令
Linux-dd命令详解 dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 例1:要把一张软盘的内容拷贝到另一张软盘上,利用/t ...
- C语言 字符串处理函数 转自 http://blog.chinaunix.net/uid-25885064-id-3175049.html
C字符串处理函数 2012-04-13 18:14:16 分类: C/C++ void *memccpy (void *dest, const void *src, int c, size_t n) ...
- RelativeLayout相对布局 各个属性详解
RelativeLayout相对布局 相对布局 RelativeLayout 允许子元素指定它们相对于其父元素或兄弟元素的位置,这是实际布局中最常用的布局方式之一.它灵活性大很多,当然属性也多,操作难 ...