2017-01-12 63 views

回答

1

你可以保持一個隱藏的輸入元素CSHTML並設置它的requirejs配置的使用

@System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); 

值,那麼在JS

require.config({ 
    urlArgs: "bust=" + document.getElementById('yourinputelementid').value 
}); 
+0

哈,原來我很弱智的假設沒有任何的DOM require.config時()執行:d這是一個正確的答案。我發現了另一種(首選)解決方案,以避免將dom與元數據(如版本號)填充到一起... – OzrenTkalcecKrznaric

0

另一種解決方案,我發現:

example.cshtml 

@{ 
    var assemblyVersion = typeof(SimpleMessages.Web.MvcApplication).Assembly 
                   .GetName() 
                   .Version 
                   .ToString(); 
} 

@section scripts { 
    <script> 
     require.config({ urlArgs: "[email protected]" }); 
     @Html.RequireJs("/Scripts/main.js", "/Scripts/My/chat-ko.js"); 
    </script> 
} 

這種方式在DOM中沒有任何內容,並且動態地正確創建程序集版本。

HTH