咨询VS2022中C#类成员出现CS0103错误、无法跟踪值的原因
VS2022调试C#代码时遇CS0103错误,无法查看ProtoType类成员值
在VS2022环境下测试C#代码,尝试跟踪ProtoType类的成员值时,VS2022提示CS0103错误,明明这些成员处于当前上下文范围内,却无法查看它们的值。
相关代码
class Program { static void Main(string[] args) { ProtoType p = new ProtoType(100, 200); p.x = 101; p.y = 20; int cnt = p.list.Count; Console.ReadLine(); } } class ProtoType { public int x = 0; public int y = 0; public List<string> list = new List<string>(); public ProtoType(int x, int y) { Console.WriteLine("Execute Constructor ProtoType()"); this.x = x; this.y = y; } public ProtoType Clone() { Console.WriteLine("Execute ProtoType.Clone()"); return (ProtoType)this.MemberwiseClone(); } }
报错截图

解决方法
- 确保代码是最新编译版本:有时候VS没自动重新生成,导致调试的是旧代码。手动按
Ctrl+Shift+B生成解决方案后再启动调试。 - 检查调试符号生成:右键项目→属性→生成→高级→调试信息,选择
完整或pdb-only,保证编译时生成.pdb符号文件,调试器才能正确映射代码和变量。 - 清理后重新生成:右键解决方案选择
清理,再重新生成,避免旧的编译缓存干扰。 - 核对即时窗口语法:在即时窗口查看成员时,要输入正确的变量名,比如
p.x,别写错变量标识,截图里的错误显示找不到x,大概率是输入时没加实例前缀p.。 - 重启VS或重置调试设置:如果以上都没用,重启VS试试,或者通过
工具→导入和导出设置→重置所有设置恢复调试默认配置,排除IDE异常。
内容的提问来源于stack exchange,提问作者Tuanyang Qiu
相关产品推荐
相关产品推荐

