为什么Intellisense会看到命名空间,但编译器却没有?

时间:2016-07-12 21:15:45

标签: c# visual-studio-2012 sendgrid

下面的屏幕截图显示VS 2012 intellisense从Helpers命名空间中获取SendGrid命名空间,但仍有编译时错误说明

The type or namespace name 'Helpers' does not exist in the namespace 'SendGrid'
(are you missing an assembly reference?)

SendGrid.Helpers intellisense

我检查了什么:

  • 该项目是.NET 4.5,并且从未改变过。
  • SendGridSendGrid.CSharp.HTTP.Client引用都有 v4.0.30319运行时版本,与其余引用相同。
  • Newtonsoft.JSON使用的
  • SendGrid也是相同的运行时版本。
  • 两者都设置为复制本地True。
  • 项目中没有其他错误。
  • F12遵循SendGrid.Helpers命名空间中的方法成功导航到其定义,所以我猜测引用的DLL没有问题???
  • 清理并重建解决方案,重启VS和机器。
  • 项目的.NET版本在3.5和4.5之间来回切换几次。
使用Nuget将

SendGrid添加到现有项目中。

2 个答案:

答案 0 :(得分:1)

根据汉斯安装旧版本SendGrid-4.0解决了这个问题。

答案 1 :(得分:0)

这很多次是由于设计时构建期间的构建中断造成的,请参阅https://github.com/dotnet/roslyn-project-system/blob/master/docs/design-time-builds.md#diagnosing-design-time-builds以获取有关诊断这些内容的说明。