2012-12-20 97 views
1

我想在我的MVC項目中實現ELMAH。 我已經完成了很多教程,並且正確設置了一切。ELMAH二進制文件放在哪裏?

當我嘗試將elmah.dll添加到我的ThirdPartyLibs文件夾(我存儲所有.dll文件的位置)時,出現了我的問題。我下載了該文件並將其解壓到我的下載文件夾中。我添加 - >現有,並導航到.dll,並指出:

「您正試圖將項目添加到源項目控制的項目,但項目的路徑沒有映射。如果繼續添加,這個項目不會被添加到源代碼控制中,你是否希望繼續添加?「

我再加入它,我的項目是失敗在下面的代碼的ELMAH部分:

Line 71:  <httpModules> 
Line 72:  <add name="Glimpse" type="Glimpse.Core.Module" /> 
Line 73:  <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/> 
Line 74:  </httpModules> 
Line 75:  <httpHandlers> 

我不知道我在做什麼錯誤的,因爲大部分文章假設你知道你的繞過MVC,Visual Studio並且可以引用.dlls。

+0

您是否添加了對dll的引用?只需將它添加到您的項目是不夠的。 – Jason

回答

3

從錯誤消息判斷,您看起來似乎是在Visual Studio下使用了一些源代碼管理,例如Team Foundation Server。您的項目受源代碼管理,並且您已將Elmah.dll程序集放置在源代碼管理項目位置之外的文件夾中。

因此,例如,您的源受控項目被映射到c:\myproject,並且您已將elmah程序集解壓到c:\elmah並從此位置引用它。這種方法的問題是源控件將不再知道這個相關程序集的位置。

所以解決此問題的一種可能性是將源代碼管理下的相關程序集添加到相同的文件夾中:例如c:\myproject\Reference Assemblies\Elmah然後從那裏引用它。或者直接使用official NuGet package

+0

您也可以考慮使用Elmah.MVC Nuget Package - http://nuget.org/packages/elmah.mvc,因爲它提供了Elmah的一些基本的MVC特定配置和錯誤處理設置。 –

相關問題