2013-06-25 74 views
2

我有一個自定義的地方,我試圖通過ResourceManifest.cs文件需要我的一些css和js文件 - 我一直在運行一個很奇怪的問題艱難。Orchard - 無法找到ResourceManifest.cs中定義的資源

我得到以下錯誤:

一個 '腳本' 命名爲 'FoundationScript' 找不到

這是我ResourceManifest.cs:

using Orchard.UI.Resources; 

namespace Themes.TestTheme 
{ 
    public class ResourceManifest : IResourceManifestProvider 
    { 
    public void BuildManifest(ResourceManifestBuilder builder) 
    { 

     var manifest = builder.Add(); 

     manifest.DefineStyle("Foundation").SetUrl("foundation.min.css"); 
     manifest.DefineScript("FoundationScript").SetUrl("foundation.min.js"); 

    } 
    } 
} 

在佈局。 CSHTML,我有以下:

@{ 
    Script.Require("ShapesBase"); 
    Script.Require("FoundationScript"); 

    Style.Include("site.css"); 
    Style.Require("Foundation"); 

} 

我在這裏錯過了什麼?

回答

1

這裏的問題是,該項目Themes與Orchard的動態編譯機制(我不知道什麼是錯的確切)有問題,因爲它駐留在文件夾Themes。即使你在Themes程序集中定義了一個類,它也會導致錯誤,告訴你在該程序集中沒有這樣的類。

解決:重新生成

嘗試的主題,/CreateProject:true/IncludeInSolution:true參數如下:

codegen theme TestTheme /CreateProject:true /IncludeInSolution:true /BasedOn :TheThemeMachine 

它會在一個單獨的project創建主題和果園會挑選你的註冊ResourceManifest

希望這會有所幫助。