mvc4 łączenie silnie typowanych pakietów

Tak więc MVC 4 wprowadza wiązanie skryptów i stylów. Co pozwala na to:

public static void RegisterBundles(BundleCollection bundles)
    {
    bundles.Add(new ScriptBundle("~/bundles/mobile").Include(
                    "~/Scripts/jquery.mobile-*"));

następnie użyty w taki sposób jak brzytwa:

@Scripts.Render("~/bundles/mobile")

Moje pytanie brzmi: dlaczego muszę pisać"~/bundles/mobile"? Czy jest jakiś sposób, aby intellisence miał silnie wpisany obiekt do odebrania? W przeciwnym razie muszę poszukać go, aby upewnić się, że nazywam to samo.

Chciałbym zrobić coś takiego: (wiem, że to się nie skompiluje, to tylko przykład)

public static void RegisterBundles(BundleCollection bundles)
    {
    Bundle mobile = new Bundle("mobile");
    mobile.AddFile("w/e")
    bundles.Add(mobile);

//in page:
 @Scripts.Render(BundleConfig.mobile)

lub coś na to wpływa.

Edytować: odpowiedź tak prosta. Tak jak@Hao Kung zwraca uwagę@Styles.Render po prostu pobiera ścieżkę ciągu URL. Stworzyłem klasę do przechowywania pathes.

public class bundles
{
    #region Javascript
    public static string scripts = "~/bundles/scripts";
    ...
    #endregion

    #region CSS

    public static string css = "~/Content/css";
    public static string jqueryUi = "~/Content/themes/base/css";
    ...
    #endregion
}

na każdej stronie po prostu to robisz

@Styles.Render(bundles.jqueryUi)

tam masz to. Trochę dodatkowego wysiłku z twojej strony, ale przynajmniej jest teraz mocno napisany.