2014-02-28 19 views
0

如果我做是腳本/主頁捆綁的保留名稱?

//BundleConfig.cs

bundles.Add(new ScriptBundle("~/Scripts/Home").Include("~/Scripts/Home/Home.js")); 

//index.cstml

@section scripts 
{ 
    @Scripts.Render("~/Scripts/Home") 
} 

那麼腳本是不會在釋放模式得到呈現,它在正常工作調試模式沒有

BundleTable.EnableOptimizations = true; 

但是如果我做

//BundleConfig.cs

bundles.Add(new ScriptBundle("~/bundles/Home").Include("~/Scripts/Home/Home.js")); 

//index.cstml

@section scripts 
{ 
    @Scripts.Render("~/bundles/Home") 
} 

然後正常工作在調試和發佈模式。

Scripts/Home保留名稱或其他?

注:我沒有別的命名爲~/Scripts/HomeBundleConfig.cs

回答

2

Scripts/Home特別,但它必須是一個有效的包名稱或路徑中一個實際的文件。

例如,如果您將以下內容添加到您的視圖而不添加添加適當的軟件包名稱,它實際上會直接將腳本從磁盤呈現給瀏覽器。 (耶)

@Scripts.Render("~/scripts/jquery-1.8.2.js")

,但對一個不存在的文件中的任何參考或捆綁的名稱會導致錯誤發生,像這樣的:

@Scripts.Render("~/scripts/jquery/*.*") -- error, no wildcards either 
@Scripts.Render("~/non-existant-directory-or-bundle-name") -- error 
@Scripts.Render("~/scripts/no-such-file.js") -- error 
1

沒有,但是包名稱(〜/腳本/首頁)無法匹配現有的文件夾或文件。 因此,我將腳本留在〜/ Scripts/...中,但將其命名爲〜/ js/....

相關問題