我一直试图在我正在创建的asp.net Web应用程序中使用我为控制台应用程序创建的几个类。我尝试的第一件事就是从控制台应用程序项目中复制类,然后导入nuget包,以便编译类。但是,当我为Web应用程序下载它们时,允许这些类完美地用于控制台应用程序的SAME NuGet包不起作用。基本上,每当我声明一个应该用NuGet包导入的类的实例时,我都会收到错误:
The type 'Microsoft.Search.Autopilot.IConfiguration' is defined in an assembly that is not referenced. You must add a reference to assembly 'Microsoft.Search.Autopilot, Version=10.8.13.52429, Culture=neutral, PublicKeyToken=471e7408fd06c98f'.
作为一个例子,假设我有一个名为SampleClass的类,它声明了某些NuGet包中的类实例。以下编译正常:
using blablapackage.blabla
namespace WebSite1
{
public class SampleClass
{
public void random(ForeignClassFromPackage x)
{
//do some stuff
}
}
但是,以下内容将抛出我之前提到的错误:
using blablapackage.blabla
namespace WebSite1
{
public class SampleClass
{
ForeignClassFromPackage y = new ForeignClassFromPackage(); //this is the origin of the error
public void random(ForeignClassFromPackage x)
{
//do some stuff
}
}
在我之前制作的控制台应用程序中完成同样的操作完全正常。我不明白为什么它会为webapp抛出这个错误。