На основании того, что сказал Василий, я придумал этот HtmlHelper:
public static void ReferencePartialViewBundle(this HtmlHelper helper)
{
// Will be something like this: "_Page_Areas_GPFund_Views_Entry__EntryVentureValuationEdit_cshtml"
var viewDataContainerName = helper.ViewDataContainer.GetType().Name;
//Determine bundle name
var bundleName = viewDataContainerName
.Replace("__", "_¬") //Preserve Partial "_" prefixes #1: Convert partial prefix "_" to "¬" temporarily
.Replace("_cshtml", ".js") //We want a js file not a cshtml
.Replace("_", "/")
.Replace("¬", "_") //Preserve Partial "_" prefixes #2: Convert partial prefix "¬" back to "_"
.Replace("/Page/", "~/Scripts/"); //All our js files live in ~/Scripts/ and then a duplicate of the file structure for views
//Reference bundle
Bundles.Reference(bundleName);
}
Моя цель состояла в том, чтобы создать помощника, который позволял бы вам ссылаться на специфичный для PartialView Bundle, используя Cassette будет иметь путь, почти идентичный пути PartialView), но вы можете увидеть принципал в действии ...