VS 2015相当不错的功能:C#交互窗口
按照惯例,老周是先吹牛后讲正事。今天就给大伙吹吹这个事。
有网友不知道是不是昨晚喝高了,居然研究起老周来了。实话告诉你,老周没什么好研究的,老周又不是编译器,老周只是一个游离于大善大恶之间的平凡人,说来也只不过是:
无故寻愁觅恨,有时似傻如狂。纵然生得好皮囊,腹内原来草莽。潦倒不通世务,愚顽怕读文章。行为偏僻性乖张,那管世人诽谤!
老周上不行圣人之道,下不通小人之事,渺渺乎,悠悠于人世间的一颗微尘罢了。所以,不要研究老周了。
网友感兴趣,老周你是怎么学到编程了的,而且还完全自学的。
唉,要说起这个,实话告诉你,当初老周拼命写代码是无目的、无功名、无条件,就是好奇,然后是喜欢。孔爷爷说得真TMD好,“知之者不如好之者,好之者不如乐之者”,说来也是,你不喜欢的东西,最好别学了,最后是学不好的。因此,你要是选择要学习了,那就收收心吧,对于这个,老周没什么特别好的建议,还是那句话:收收心吧。
==========================================================
好,闲话扯完了,下面扯正经事。VS 2015有一个功能,让我相当喜欢,就是在“视图” - “其他窗口”菜单下面有个叫“C# 交互”的窗口,简直是大爱这个窗口。
为啥?以前嘛,如果要写一些小测试的代码,非得要新建一个项目,然后再写代码做测试。对于一些小小的内容还要建个项目,真是不好。不过,现在VS 2015有了这个交互功能,要测代码方便很多,你可以在这个窗口中:
1、直接输入C#代码;
2、有智能提示;
3、实时编译,计算表达式结果。
是不是觉得很玄乎?非也,至少没那些扯蛋的玄幻小说那个玄,但绝对是个好功能。
这个窗口需要VS 2015 update 1,注意,它和VS的N年前的命令行窗口不同,现在这个交互窗口用的是新的编译器。
屁话少说,来来来,老周教你玩玩,很爽的。
打开VS 2015,在右上角的快速启动输入框中输入“C# 交互”,然后会找到[视图]菜单下面的这个命令,直接点击即可。

然后你会看到这个窗口:

和命令提示窗口差不多,假如,我现在想知道int类型的最大值是多少,你直接输入:
int.MaxValue
然后按下回车,你会看到实时执行的结果。

再比如,Environment类有个静态属性ProcessorCount,可以得到计算机上CPU数量,包含核数和线程数。输入:
Environment.ProcessorCount
然后按下回车,看

双核四线程,返回4。
-----------------------------------------------------------------------
没玩够的话,咱们继续,在使用加密API的时候,尤其是双向加密时,通常想知道key和IV的位数。比如,AES算法,我想知道它的Key和IV分别是多少位。来,动手。
首先,引入命名空间,每输完一句就回车。
using System.Security.Cryptography;
new一个AesCryptoServiceProvider实例:
AesCryptoServiceProvider prd = new AesCryptoServiceProvider();
输入以下表达式,就可以得到key的位数了。
prd.KeySize
最后,看整体效果。

如何,刺激不。
------------------------------------------------------------------------------------------------------
再举个例子,假如我要用System.Xml.Linq下面的XDocument类来创建一个XML文档,而这个窗口默认只引用System、mscorelib和system.core,并没有引用System.Xml.Linq程序集,那怎么做呢?
不用怕,这个窗口还支持动态引用程序集,输入:
#r "System.Xml.Linq"
以#r开头,然后空格,接着是字符表达式,内容为程序集的名字。而且,你在输入时还有智能提示。

随后,你就可以using了。
using System.Xml.Linq;
下面来建一个XML文档。
XDocument doc = new XDocument(new XElement("root", new XElement("book", "《南游记》")));
回车后,代码会执行。
然后看看新建的XML文档中有啥。直接输入变量名doc,然后回车,会自动调用其ToString方法。
doc
最后,结果如下。

如果要清除窗口的内容,请直接输入:
#cls
然后回车。
这个交互窗口够强大吧。
好,今天的表演结束,谢谢观看。
VS 2015相当不错的功能:C#交互窗口的更多相关文章
- APP测试点总结(功能,交互,死机崩溃状态分析,容易出错的检查点)
APP测试点总结(功能,交互,死机崩溃状态分析,容易出错的检查点) 版权声明:本文为博主原创文章,未经博主允许不得转载. 最近涉足APP端测试,常见检查点总结如下: 一.业务方面: 1. 注册( ...
- 多功能前台交互效果插件superSlide
平时我们常用的"焦点图/幻灯片""Tab标签切换""图片滚动""无缝滚动"等效果要加载n个插件,又害怕代码冲突又怕不兼容 ...
- 百度地图API 批量添加 带检索功能的信息窗口
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 百度API的经历,怎样为多个点添加带检索功能的信息窗口
不管我们要做什么样的效果,APIKey(密钥)都是不可缺少的要件,所以我们需要先去百度申请我们的APIKey!!! 伸手党,请直接到页面底部获取完整代码! 最近做一个门店查询的内容展示,考虑到用户直观 ...
- 发现 OpenStack: 架构、功能和交互
原文:http://www.ibm.com/developerworks/cn/cloud/library/cl-openstack-overview/index.html OpenStack 是由 ...
- web测试点总结---UI、兼容、功能、交互、安全、性能、接口测试
一.概述 1.什么是web? web的本意是蜘蛛网和网的意思,在网页设计中我们称为网页的意思.现广泛译作网络.互联网等技术领域.表现为三种形式,即超文本(hypertext).超媒体(hypermed ...
- Visual Studio 2015 Bowser Link的功能不停的向服务端发送请求
Visual Studio 2015新建的mvc项目 默认在每个视图上生成一些JavaScript脚本
- 第1节 IMPALA:8、shell交互窗口使用;9、外部和内部shell参数
impala当中的元数据的同步的问题impala当中创建的数据库表,直接就可以看得到,不用刷新hive当中创建的数据库表,需要刷新元数据才能够看得到 因为impala的catalog的服务,我们需要通 ...
- SSRS中加入书签功能及数据集窗口
SSRS在使用过程中,是比较好用的,但如果报表过长,则会比较难看到想看的内容,在SSRS中有书签功能,可以将报表直接直接跳转至书签位置,这样用户可以比较精准的定位到关注位置.使用一个文本框或是图片,再 ...
随机推荐
- NodeJs之child_process
一.child_process child_process是NodeJs的重要模块.帮助我们创建多进程任务,更好的利用了计算机的多核性能. 当然也支持线程间的通信. 二.child_process的几 ...
- TODO:Laravel 内置简单登录
TODO:Laravel 内置简单登录 1. 激活Laravel的Auth系统Laravel 利用 PHP 的新特性 trait 内置了非常完善好用的简单用户登录注册功能,适合一些不需要复杂用户权限管 ...
- Appium移动自动化框架
引言:Appium 是一个移动端自动化测试开源工具,可以针对不同的平台用一套API来编写测试用例.本文对Appium自动化测试框架的功能进行了概括. 本文选自<软件自动化测试开发>. Ap ...
- 【.net 深呼吸】程序集的热更新
当一个程序集被加载使用的时候,出于数据的完整性和安全性考虑,程序集文件(在99.9998%的情况下是.dll文件)会被锁定,如果此时你想更新程序集(实际上是替换dll文件),是不可以操作的,这时你得把 ...
- python与c互相调用
虽然python开发效率很高,但作为脚本语言,其性能不高,所以为了兼顾开发效率和性能,通常把性能要求高的模块用c或c++来实现或者在c或c++中运行python脚本来处理逻辑,前者通常是python中 ...
- 对Thoughtworks的有趣笔试题实践
记得2014年在网上看到Thoughtworks的一道笔试题,当时觉得挺有意思,但是没动手去写.这几天又在网上看到了,于是我抽了一点时间写了下,我把程序运行的结果跟网上的答案对了一下,应该是对的,但是 ...
- 设置line-height:1.5和line-height:150%或者line-height:150px的区别
直接正题: 看一下line-height可能的值: 其实可以分为两类: (1)不带单位的(如line-height:1.5),这种是推荐使用的: (2)带单位的(如line-heigth:30px/1 ...
- node中子进程同步输出
管道 通过"child_process"模块fork出来的子进程都是返回一个ChildProcess对象实例,ChildProcess类比较特殊无法手动创建该对象实例,只能使用fo ...
- 【Reading Note】算法读书杂记
1 排序 排序基本信息 稳定性:排序前大的数在排序后,大的数依然保持不变就是稳定排序,反之不稳定 内外排序:根据待排序的记录是否放在内存里面区分的.诸如:插入排序(直接插入&希尔).交换排序( ...
- ASP.NET Core 中文文档 第四章 MVC(4.1)Controllers, Actions 和 Action Results
原文:Controllers, Actions, and Action Results 作者:Steve Smith 翻译:姚阿勇(Dr.Yao) 校对:许登洋(Seay) Action 和 acti ...