2013-06-20 38 views
0

this answer開始,項目文件已經有了這樣做的推薦方法。但是,這對我們的情況還不夠。我們碰巧在另一個項目中共享了視圖。有幾個文件使用共享的.master頁面,當嘗試使用aspnet_compiler時會導致編譯錯誤。如何在編譯視圖時包含來自另一個項目的視圖文件?

我試圖完成這樣說:

<Target Name="AfterBuild" Condition="'$(MvcBuildViews)'=='true'"> 
    <PropertyGroup> 
    <TempFolder>$(ProjectDir)\..\temp</TempFolder> 
    </PropertyGroup> 
    <AspNetCompiler VirtualPath="temp" TargetPath="$(TempFolder)" PhysicalPath="other views location" /> 
    <AspNetCompiler VirtualPath="temp" TargetPath="$(TempFolder)" PhysicalPath="$(ProjectDir)" /> 
</Target> 

原來aspnet_compiler要求TargetPath文件夾是空的,所以這是一個沒有去。嘗試使用VirtualPathTargetPath不起作用,因爲VirtualPath是臨時的,不會繼續進行第二次編譯器調用。

有沒有辦法完成這個?我們顯然可以將母版頁複製到這個項目中,但這不是一個好的解決方案。

回答

0

做到這一點的唯一方法是將Razor視圖編譯到DLL中,以便它們可用於任何應用程序引用的DLL。 Razor團隊爲此創建了Razor Generator

+0

該項目恰巧使用舊的aspx引擎(因此.master文件)。有沒有相同的東西?考慮將其轉換爲Razor太大了。 – lukini

+0

不是我所知道的。抱歉。 –

相關問題