You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio中Nunit测试项目无法访问Controllers命名空间类问题求助

无法访问Controllers命名空间类的排查解决方法
  • 检查两个项目的目标框架兼容性:如果Controllers项目的目标框架和测试项目不一致(比如一个是.NET Framework,另一个是.NET Core/.NET 5+,或者大版本号不匹配),即使添加了引用也无法正常访问内部类型
  • 确认待访问类的访问修饰符:要确保Controllers命名空间下的类本身的修饰符为public,不要和类内部方法、属性的修饰符混淆,也不要漏掉类的修饰符(C#中类默认修饰符为internal,仅同项目可访问)
  • 排查命名空间冲突:如果测试项目内存在同名的OrderManagementSystem.Controllers自定义命名空间,会导致优先级冲突无法读取引用项目的类型,可以尝试写全限定名验证,比如直接输入OrderManagementSystem.Controllers.你的控制器类名看是否能识别
  • 检查引用配置:右键点击测试项目中引用的Controllers项目,打开属性页,确认「复制本地」选项设置为True,避免编译时没有把依赖同步到输出目录
  • 清理编译缓存:点击顶部菜单「生成」-「清理解决方案」,之后重新生成整个解决方案,排除旧编译缓存导致的引用识别异常
  • 确认Controllers项目类型:如果Controllers是放在ASP.NET Core Web项目里,默认Web项目的SDK不支持被其他项目引用,需要修改项目配置:打开Controllers项目的.csproj文件,把首行的<Project Sdk="Microsoft.NET.Sdk.Web">改为<Project Sdk="Microsoft.NET.Sdk">,同时删除文件内的<AspNetCoreHostingModel>相关配置节点,保存后重新添加引用即可

问题场景截图

内容的提问来源于stack exchange,提问作者JUJU

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 14:45:04