2010-11-04 81 views
0

我剛剛將我們的一個Web應用程序升級到ASP.NET 4.0。它使用CssFriendly作爲菜單和一些有樹的頁面。當我嘗試我的本地機器(Win7的X64,IIS7)我正在上運行:CSS友好並升級到ASP.NET 4.0

error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.

Parser Error Message: The browser or gateway element with ID 'MozillaFirefox' cannot be found.

Source Error:

Line 7: </browser>
Line 8:
Line 9: <browser refID="MozillaFirefox">
Line 10: <controlAdapters>
Line 11: <adapter> controlType="System.Web.UI.WebControls.Menu"

Source File: E:\RivWorks\localhost\App_Browsers\CSSMenuAdapter.browser

Version Information:
Microsoft .NET Framework Version:4.0.30319;
ASP.NET Version:4.0.30319.1

我瀏覽了一些解決方案,並遵循「瀏覽器定義文件更新」標題下,在http://www.asp.net/LEARN/whitepapers/aspnet4/breaking-changes的方向。如果我在命令窗口中運行VS2010我ASPNET_REGBROWSERS得到:

aspnet_regbrowsers –i
Command "aspnet_regbrowsers" is not valid.

所以,我想它從命令提示符(以管理員模式),它似乎工作。然後我重新編譯了我的應用並重新發布了它。我仍然收到同樣的錯誤。任何想法我失蹤?


注1: 在我CSSMenuAdapter.browser文件(CSS友善)有一個條目:

<browser refID="MozillaFirefox"> 
    <controlAdapters> 
     <adapter controlType="System.Web.UI.WebControls.Menu" 
       adapterType="RivWorks.Web.MenuAdapter" /> 
    </controlAdapters> 
    </browser> 

在C:\ WINDOWS \ Microsoft.NET \框架\ v4.0.30319 \ Config中\瀏覽器\ mozilla.browser有:

<browser id="MozillaFirefox" parentID="MozillaRV"> 
    <identification> 
     <userAgent match="Gecko\/\d+ Firefox\/(?'version'(?'major'\d+)(?'minor'\.[.\d]*))" /> 
    </identification> 

    <capabilities> 
     <capability name="browser"       value="Firefox" /> 
     <capability name="majorversion"     value="${major}" /> 
     <capability name="minorversion"     value="${minor}" /> 
     <capability name="version"       value="${version}" /> 
     <capability name="type"       value="Firefox${version}" /> 
    </capabilities> 
</browser> 

我不明白爲什麼找不到。 :(


注2:我在CSSMenuAdapter.browser文件註釋掉瀏覽器元素和站點重新工作我看着生成的代碼,並在Chrome中看起來不錯我也看了一下它在Firefox和它正在工作(因爲它已被註釋掉了我的腦袋),IE也在工作,我很失落,因爲現在真的破碎了!

+0

B在執行aspnet_regbrowsers命令之前,您是否將瀏覽器配置文件複製到.net 4.0文件夾中? – 2010-11-04 16:28:08

+0

我複製了2.0瀏覽器文件(舊瀏覽器定義文件文件夾)。由於CssFriendly是爲2.0編寫的(3.0/3.5版本,因爲瀏覽器定義都是2.0),我以爲應該解決我的問題。 – 2010-11-04 17:04:34

回答

2

將refID更新爲「 Firefox「。對我有效,因爲在C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Config \ Browsers \ mozilla.browser 圖標是Firefox不是MozillaFirefox。