2010-12-21 106 views
1

我有一個關於添加對.NET項目引用的簡單問題。我將reCAPTCHA添加到網站,並且我已經下載了該dll。添加對.dll的引用asp.net

設置參考DLL我建立並運行該項目,並得到這個錯誤後:

[ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.] 
    System.Reflection.Module._GetTypesInternal(StackCrawlMark& stackMark) +0 
    System.Reflection.Assembly.GetTypes() +96 
    StarSuite.Core.Settings.GetSingletonInstancesOfBaseType(Type baseType, String staticMethodName, Type returnType) +149 

[ApplicationException: Unable to load types from 'Recaptcha, Version=1.0.5.0, Culture=neutral, PublicKeyToken=9afc4d65b28c38c2'. LoaderExceptions: [FileNotFoundException: Could not load file or assembly 'System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.] 
] 

我失去了什麼,爲什麼我得到這個錯誤?

回答

2

對不起,如果問題是愚蠢的...它是你的web項目MVC?看起來如果你使用的是基於web表單的項目,你不應該使用這個組件,因爲它依賴於mvc程序集(也許有一個web表單版本?)。

+0

不,它不是一個MVC項目。我有錯誤的DLL? – Andy 2010-12-21 13:04:53

+0

我還沒有使用過這個組件,但是我想說你應該在谷歌代碼上檢查這個項目http://code.google.com/apis/recaptcha/docs/aspnet.html – 2010-12-21 13:11:39

+0

我嘗試了一個老版本的組件我接縫工作!非常感謝您的幫助和時間! – Andy 2010-12-21 13:14:11

1

找不到文件

這是你的原因 - 它的輸出:

FileNotFoundException 

在您參考指向

+0

但我已清楚該文件,瀏覽到它時,我添加引用? – Andy 2010-12-21 12:51:22

+0

你可以看看引用屬性,併發布它的路徑是什麼,探索者說它的路徑是什麼? – 2010-12-21 12:52:33

+1

嘗試檢查文件權限 – 2010-12-21 12:52:54

1

仔細檢查你有沒有下引用添加DLL在你的項目中,所以它會包含在構建中?

+0

我在項目中沒有參考文件夾? – Andy 2010-12-21 13:02:22

+0

我正在討論Visual Studio中解決方案資源管理器中的參考文件夾。 – StefanE 2010-12-21 13:36:17

1

對於人們找到這個搜索的同時爲一把umbraco修復,修復可以在這裏找到:

http://our.umbraco.org/forum/developers/xslt/19383-referencing-catcha-dll-breaks-xslt

相同的修訂可以應用到沒有運行的一把umbraco網站。

總結,以節省您不必讀取整個論壇上發帖,將它添加到您的web配置:

<runtime> 
     <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
      <dependentAssembly> 
       <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35"/> 
       <bindingRedirect oldVersion="1.0.0.0" 
      newVersion="2.0.0.0"/> 
      </dependentAssembly> 
     </assemblyBinding> 
    </runtime>