由Find All References引发的思考。,
2017-06-01 22:32
281 查看
今天在研究C#代码问题的时候遇到了一个Visual Studio的小问题。在Visual Studio 2013中,使用Find All References功能不能找到同一类型不同版本的所有引用,具体情况请见下面例子。
为了更方便的展示这个问题,我写了两段小代码测试。如下图,TestFindAllReferences1是基于.NET Framework 3.5的,TestFindAllReferences2是基于.NET Framework 4.5的,两个Project中都引用了SqlConnection类,根据Framework版本,TestFindAllReferences1中引用的是System.Data.dll v2.0.0.0版本,而TestFindAllReferences2中引用的是System.Data.dll
v4.0.0.0版本。
![](http://images2015.cnblogs.com/blog/1147484/201705/1147484-20170531211019758-96811668.png)
这时在使用Visual Studio 2013的Find All References功能的时候,只能找到对应版本的SqlConnection引用,结果如下:
TestFindAllReferences1中只能找到引用System.Data.dll v2.0.0.0中SqlConnection的。
![](http://images2015.cnblogs.com/blog/1147484/201705/1147484-20170531211741946-630731538.png)
TestFindAllReferences2中只能找到引用System.Data.dll v4.0.0.0中SqlConnection的。
![](http://images2015.cnblogs.com/blog/1147484/201705/1147484-20170531211447805-923055503.png)
而在Visual Studio 2015中,结果就不一样了,可以找到所有的同类引用,尽管它们引用的Framework版本是不同的。如下图:
![](http://images2015.cnblogs.com/blog/1147484/201705/1147484-20170531212029196-103396219.png)
这里看来,可能是Visual Studio 2015的优化,更方便的查找引用(由于本人能力有限,找了好久也没有找到相关的微软说明,如果有哪位技术大牛找到了,请赐教)。
如果使用Visual Studio 2017,也能找到所有的同类引用,而且查找出来的结果更加美观,还支持分组:
![](http://images2015.cnblogs.com/blog/1147484/201705/1147484-20170531212557977-1785053388.png)
Visual Studio 2017的更多改进功能可以看这里:https://blogs.msdn.microsoft.com/visualstudio/2017/03/07/visual-studio-2017-productivity-performance-and-partners/。
这篇博文的内容可能有点微不足道,也或许被人称为垃圾文章,但是遇到这个Find All References的问题后,多想了一点,想给大家分享一点东西,所以写了出来(也是为自己提醒)。如有不对请轻点踩~
当分析一个问题毫无思路、陷入怪圈的时候,试试换一个工具,换位思考,换一种思路,或许有新的发现;
人往高处走,新的东西产生肯定有它好的地方,要敢于尝试新工具、新技术,学得越多会得越多,会得越多心越有底(意思不是盲目求新,具体还得根据自己需求);
在同等条件、同等要求下,建议一定要使用最新最稳定的软件工具,这样能减少不必要的问题产生(如前一段时间的"永恒之蓝"病毒,其实早在3月微软就已经发补丁了。。。)
[原创文章,转载请注明出处,仅供学习研究之用,如有错误请留言,如觉得不错请推荐,谢谢支持]
[原文:http://www.cnblogs.com/lavender000/p/6926128.html,来自永远薰薰]
为了更方便的展示这个问题,我写了两段小代码测试。如下图,TestFindAllReferences1是基于.NET Framework 3.5的,TestFindAllReferences2是基于.NET Framework 4.5的,两个Project中都引用了SqlConnection类,根据Framework版本,TestFindAllReferences1中引用的是System.Data.dll v2.0.0.0版本,而TestFindAllReferences2中引用的是System.Data.dll
v4.0.0.0版本。
![](http://images2015.cnblogs.com/blog/1147484/201705/1147484-20170531211019758-96811668.png)
这时在使用Visual Studio 2013的Find All References功能的时候,只能找到对应版本的SqlConnection引用,结果如下:
TestFindAllReferences1中只能找到引用System.Data.dll v2.0.0.0中SqlConnection的。
![](http://images2015.cnblogs.com/blog/1147484/201705/1147484-20170531211741946-630731538.png)
TestFindAllReferences2中只能找到引用System.Data.dll v4.0.0.0中SqlConnection的。
![](http://images2015.cnblogs.com/blog/1147484/201705/1147484-20170531211447805-923055503.png)
而在Visual Studio 2015中,结果就不一样了,可以找到所有的同类引用,尽管它们引用的Framework版本是不同的。如下图:
![](http://images2015.cnblogs.com/blog/1147484/201705/1147484-20170531212029196-103396219.png)
这里看来,可能是Visual Studio 2015的优化,更方便的查找引用(由于本人能力有限,找了好久也没有找到相关的微软说明,如果有哪位技术大牛找到了,请赐教)。
如果使用Visual Studio 2017,也能找到所有的同类引用,而且查找出来的结果更加美观,还支持分组:
![](http://images2015.cnblogs.com/blog/1147484/201705/1147484-20170531212557977-1785053388.png)
Visual Studio 2017的更多改进功能可以看这里:https://blogs.msdn.microsoft.com/visualstudio/2017/03/07/visual-studio-2017-productivity-performance-and-partners/。
这篇博文的内容可能有点微不足道,也或许被人称为垃圾文章,但是遇到这个Find All References的问题后,多想了一点,想给大家分享一点东西,所以写了出来(也是为自己提醒)。如有不对请轻点踩~
当分析一个问题毫无思路、陷入怪圈的时候,试试换一个工具,换位思考,换一种思路,或许有新的发现;
人往高处走,新的东西产生肯定有它好的地方,要敢于尝试新工具、新技术,学得越多会得越多,会得越多心越有底(意思不是盲目求新,具体还得根据自己需求);
在同等条件、同等要求下,建议一定要使用最新最稳定的软件工具,这样能减少不必要的问题产生(如前一段时间的"永恒之蓝"病毒,其实早在3月微软就已经发补丁了。。。)
[原创文章,转载请注明出处,仅供学习研究之用,如有错误请留言,如觉得不错请推荐,谢谢支持]
[原文:http://www.cnblogs.com/lavender000/p/6926128.html,来自永远薰薰]
相关文章推荐
- 由Find All References引发的思考。,
- 由Find All References引发的思考。,
- 由Find All References引发的思考。,
- 由Find All References引发的思考。,
- 由Find All References引发的思考。,
- Linq与FindAll查找效率引发的思考
- 【续集】塞翁失马,焉知非福:由 Styles.Render 所引发 runAllManagedModulesForAllRequests="true" 的思考
- 塞翁失马,焉知非福:由 Styles.Render 所引发 runAllManagedModulesForAllRequests="true" 的思考
- python pip 安装lxml,报错Unable to find vcvarsall.bat,(windows)
- Python error: Microsoft Visual C++ 10.0 is required (Unable to find vcvarsall.bat).
- leetcode之Find All Numbers Disappeared in an Array
- Python用pip 安装lxml时出现 “Unable to find vcvarsall.bat ”解决方案
- 由 MS12-005 : 嵌入式对象任意代码执行引发的思考
- 解决"cannot find grldr in all devices"问题
- 一道面试题引发的对JavaScript类型转换的思考
- 面试引发的思考
- 由京东发货引发的思考和分析
- Quality Center引发的测试管理思考
- find-all-duplicates-in-an-array(典型的数组中的重复数,不错,我做出来了,可是发现别人有更好的做法)
- 程序人生----JavaScript引发的思考