2010-07-18 119 views
1

我创建了自定义DLL “MongoDbExtensions”。现在,在一个新项目中,我添加了对“MongoDbExtensions”的引用,然后尝试调用MongoDbExtensions内称为ToDocument的方法。我使用resharper在文件顶部添加命名空间,但是当我编译时,我仍然收到以下错误:添加引用问题在Visual Studio 2010

错误1无法找到类型或名称空间名称'MongoDbExtensions'(您是否缺少using指令或的组件参考)C:\项目\ HelpForum \ DemoConsole \ Program.cs的6 7 DemoConsole

什么问题呢?我的DLL可以从这里下载:

更新1:

这里是MongoExtensions类:

namespace MongoDbExtensions 
{ 

    public static class MongoExtensions 
    { 
     public static List<T> ToList<T>(this IEnumerable<Document> documents) 
     { 
      var list = new List<T>(); 

      var enumerator = documents.GetEnumerator(); 

      while (enumerator.MoveNext()) 
      { 
       list.Add(enumerator.Current.ToClass<T>()); 
      } 

      return list; 
     } 

} 
} 

ToDocument是一个扩展方法的对象的工作。

+0

请告诉我们你的代码。 – SLaks 2010-07-18 19:07:11

+0

右键单击添加的引用MongoDbExtensions并选择对象浏览器。现在在浏览器中检查结构以调用ToDocument()。从那里你可以得到命名空间,并在其下调用它。这将帮助你解决 – 2010-07-18 19:29:34

回答

3

我的摄制。该DLL是针对.NET 4.0构建的。你不能在一个只有完整的4.0 .NET框架的项目中使用它。针对较低版本或客户端配置文件会产生此错误。

+0

我想在.NET 4.0项目中使用它! – azamsharp 2010-07-18 22:54:45

+0

谢谢汉斯!你是对的!我切换到.NET 4.0,现在开始工作。谢谢你的提示! – azamsharp 2010-07-18 23:04:11

0

由于您的课程名为MongoExtensions,因此您需要将测试项目源代码中的MongoDbExtensions更改为MongoExtensions

+0

是的,正是调用'MongoDbExtensions.MongoExtensions',例如: 'MongoDbExtensions.MongoExtensions.BetterInsert(myColl,myDoc)' 或插入相应的using语句。 – Andreas 2010-07-18 19:15:18

+0

测试项目源代码是什么意思?我正在使用Resharper添加我的引用,但它仍然给出相同的错误! – azamsharp 2010-07-18 23:01:03

+0

在'.cs'文件中,您需要使用正确的类名。 – SLaks 2010-07-18 23:03:38

相关问题