摘要:[Visual Studio] 解决移至定义时总是开启中继数据页面
在一个方案(Solution)当中可能会依照功能不同切成多个项目(Project)
而这些项目可能会互相加入参考(References)来使用对方的功能
目前有两个项目在同一个方案内,分别是
- ConsoleApplication3 (主要程序)
- MyLibrary (共用函数库 DLL)
通常我加入参考的方式是直接找到那个DLL,在这个例子里面的文件目录在
ConsoleApplication3MyLibrarybinDebugMyLibrary.dll
那于是我开始引用功能
using MyLibrary; //引用命名空间
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
//使用MyLibrary的类
MyClass my = new MyClass(10, "Tim");
my.DoSomething();
}
}
}
通常来说这样是可以运行正常的,但我如果在 MyClass 类上面按下F12(移至定义)
画面只会显示中继数据(metadata)
在开发过程中上我可能会这边改改,那边修修
想到什么流程需要修改的可能就直接跳过去改
但无法快速转跳至源代码无疑是个麻烦
我只想看源代码,但它总是跑出中继数据来,这不是我想要的!
因为引用目标是采用 DLL 参考,经过编译后的 DLL 在 Visual Studio 当中没办法显示源代码,仅列出公开函数
解决方法
1. 删除原先在参考(References)上面的引用
2. 重新开启加入参考页面,但是参考选项改采用项目参考方式
这么做除了直接导向源代码这个好处以外
如果我 MyLibrary 内的程序进行重构,例如类重新命名,它也会连动修改另一个项目中引用到的地方
而且在函数参考也可以更快速的看到有谁引用了这个功能
再加上如果 DLL 修改后可不用经过重新编译能使用最新版的函数
我在正视此问题并着手改善之前可能已经不知耗费了数个小时在函数库重新编译、不停的切换项目个别重构
想想还真是挺浪费生命的
原文:大专栏 [Visual Studio] 解决移至定义时总是开启中继数据页面
原文地址:https://www.cnblogs.com/chinatrump/p/11458342.html