• 好用的 VS扩展


    装上VS2010后,去官网搜罗了几个VS扩展,用着挺顺手,这让我的VS2010用起来舒服多了。

    在这里晒晒我装的这几个扩展,希望大家看了以后也能在下面的留言里晒晒自己的,咱们交流1下。
    VS扩展,包括控件、模板和工具。工具就相当于小插件了,我装的都是这些,它们极大扩展的VS环境原有的功能。
    选择工具菜单->扩展管理器

    扩展管理器里显示已安装的扩展,可以启用和禁用;还可以通过联机库去下载新扩展。

    一、Productivity Power Tools
    我喜欢的功能:
    1、Enhanced Scrollbar(增强的滚动条),在代码窗口右侧滚动条上通过不同的色点来显示一些附加信息。

    绿色表示修改后已保存的代码,黄色表示修改后还没保存的代码,蓝色表示当前光标所在位置。其他还包括:断点、书签、光标所在类型在文档中所有出现的位置等等。

    2、Solution Navigator(解决方案导航器)。
    这个太好用了,有了它,我已经关掉VS自己的解决方案资源管理器了。它除了有VS自已那个管理器所有的功能,主要增加了可以按各种条件来筛选显示解决方案中的文件。

    All:全部显示,Open:只显示已经打开的文件,Unsaved:修改后还没保存的文件,Edited:有修改的文件。在代码中还可以使用Ctrl+1和Ctrl+2快捷键,有惊喜,自己探索吧。

    3、Tab Well UI(改进的文档标签)
     
    4、Searchable Add Reference Dialog(可搜索的添加引用对话框)。在添加引用时,可以根据关键字进行搜索。
     
    5、Quick Access(快速访问)。又一强大功能。按Ctrl+3后打开Quick Access对话框,输入关键字后回车,就可以快速执行包括VS的菜单命令、选择已打开的文档标签、查找解决方案中的文档等等。
    比如:输入控制台后回车,就可以打开创建项目对话框,并且选择的是创建控制台应用程序模板。
     
    6、Automatic Brace Completion(这个不会翻译 >_<)。当输入{,帮你完成输入},同时按Tab键光标跳到}后面。其他还支持 () [] <> "" ''
     
    7、Ctrl + Click Go To Definition(Ctrl加鼠标单击转到定义),不解释。
     
    8、Colorized Parameter Help(参数帮助着色),调用方法时的显示工具提示中对参数数据类型和关键字进行着色。

     
    二、Collapse Selection In Solution Explorer
    这个扩展工具功能很单纯,就是一键折叠解决方案管理器中所有展开的节点,当方案里项目和文档很多时,挺有用。可以作为上一个工具的解决方案导航器的补充。两个操作方式,一是点解决方案资源管理器的工具栏的图标;二是按快捷键,默认是Ctrl+Alt+数字键盘上的-,可以在工具->选项->键盘里改。
     
    三、Indent Guides
    为代码缩进添加参考线。代码看上去整齐多了。

     
    四、Javascript Parser
    我喜欢的功能:
    1、当前文档中所有JS函数的树状列表,并且当鼠标悬停于列表中的函数时,显示函数中的注释说明。

    2、在调试模式下显示动态注册的脚本的函数,比如页面上使用了验证控件,可以显示验证控件在运行时添加的那些函数。

    3、当函数以骆驼命名法命名时,通过键入每词首字快速查找函数
     
    4、显示函数中的//TODO注释。
    这个工具刚装不久,其他功能持续探索中。。。
     
    五、NuGet Package Manager
    NuGet是一个在线的第三方类库。通过此管理器,可以在线浏览、查找众多的第三方类库,并下载回本地并引用到项目中。相当不错。

     

    最后,大多扩展工具的设置,都可以通过VS的工具->选项菜单来设置。

    直奔主题,如下SQL语句:

    SELECT COUNT(*) AS COUNT,REQUEST,METHOD FROM REQUESTMETH GROUP BY 
    REQUEST,METHOD HAVING (REQUEST ='FC.OCEAN.JOB.SERVER.CBIZOZBKHEADER' OR REQUEST='FC.Ocean.Job.Server.CBizOzDocHeader')
    AND COUNT(*) >3
    ORDER BY REQUEST

    注意事项:

    HAVING后的条件不能用别名COUNT>3 必须使用COUNT(*) >3,否则报:列名 'COUNT' 无效。

    having 子句中的每一个元素并不一定要出现在select列表中

    如果把该语句写成:

    SELECT COUNT(*) AS COUNT,REQUEST,METHOD FROM REQUESTMETH GROUP BY 
    REQUEST ORDER BY REQUEST

    那么将报:

    选择列表中的列 'REQUESTMETH.method' 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中。

    注意:
    1、使用GROUP BY 子句时,SELECT 列表中的非汇总列必须为GROUP BY 列表中的项。
    2、分组时,所有的NULL值分为一组。
    3、GROUP BY 列表中一般不允许出现复杂的表达试、显示标题以及SELECT列表中的位置标号。

    如:

    SELECT REQUEST,METHOD, COUNT(*) AS COUNT FROM REQUESTMETH GROUP BY 
    REQUEST,2 ORDER BY REQUEST  

    错误信息为:每个 GROUP BY 表达式都必须包含至少一个列引用。

    GROUP BY 中使用 ORDER BY注意事项:

    SELECT COUNT(*) AS COUNT FROM REQUESTMETH GROUP BY REQUEST,METHOD ORDER BY REQUEST,METHOD

    --这样是允许的, ORDER BY后面的字段包含在GROUP BY 子句中

     

    SELECT COUNT(*) AS COUNTS FROM REQUESTMETH GROUP BY REQUEST ORDER BY COUNT(*) DESC 

    --这样是允许的,ORDER BY后面的字段包含在聚合函数中,结果集同下面语句一样

     

    SELECT COUNT(*) AS COUNTS FROM REQUESTMETH GROUP BY REQUEST ORDER BY COUNTS DESC 

    --这样是允许的,区别于HAVING,HAVING后不允许跟聚集函数的别名作为过滤条件

     

    SELECT COUNT(*) AS COUNTS FROM REQUESTMETH GROUP BY REQUEST ORDER BY METHOD

    --这样是错误的:ORDER BY 子句中的列 "REQUESTMETH.method" 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中。


    SELECT DISTINCT 中使用 ORDER BY注意事项:

    SELECT DISTINCT BOOKID FROM BOOK ORDER BY BOOKNAME

    以上语句将报:

    --如果指定了SELECT DISTINCT,那么ORDER BY 子句中的项就必须出现在选择列表中。

    因为以上语句类似

    SELECT BOOKID FROM BOOK GROUP BY BOOKID ORDER BY BOOKNAME

    其实错误信息也为:

    --ORDER BY子句中的列"BOOK.BookName" 无效,因为该列没有包含在聚合函数或GROUP BY 子句中。


    应该改为:

    SELECT DISTINCT BOOKID,BOOKNAME FROM BOOK ORDER BY BOOKNAME
    SELECT DISTINCT BOOKID,BOOKNAME FROM BOOK
    SELECT BOOKID,BOOKNAME FROM BOOK GROUP BY BOOKID,BOOKNAME

    以上两句查询结果是一致的,DISTINCT的语句其实完全可以等效的转换为GROUP BY语句

  • 相关阅读:
    Super Mario
    SPOJ Count on a tree
    SPOJ DQUERY
    51nod 区间中第K大的数
    POJ2104 K-th Number
    矩阵模板
    Sasha and Array
    MVC RenderSection
    Lazy Acquisition
    .net4.5 await async 简化之后的异步编程模型
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/2744704.html
Copyright © 2020-2023  润新知