Biggle's Blog

Web- und Software Development

by Mario Binder

Multiple types were found that match the controller named ‘xxx’

Wenn man mit Areas innerhalb eines MVC Projektes arbeitet, dann wäre es ja sinnvoll beispielweise auch auch einen Controller namens Home zu verwenden. Das Problem ist nur, wenn man eben schon einen HomeController in der Anwendung hat, dass man vorerst die Fehlermeldung “Multiple types were found match the controller named “xxx” bekommt.

image

Diese bekommt man weg, indem man in der global.asax.cs im Route-Mapping den Namespace zu den Controllern mit angibt.

public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional }, new [] { "My.Namespace.Web.Controllers" } // Parameter defaults ); }

Auch in den Areas muss man in der *Registration.cs dafür sorgen, das man auf die richtigen Controller routet:

public override void RegisterArea(AreaRegistrationContext context) { context.MapRoute( "Admin_default", "Admin/{controller}/{action}/{id}", new { action = "Index", id = UrlParameter.Optional }, new[] { "My.Namespace.Web.Areas.Admin.Controllers" } ); }

Viel Spaß beim entwickeln : )

by Mario Binder

MVC / Razor Style-Switcher – Quicky

Heute möchte ich zeigen, wie man sich einen einfachen Style-Switcher mittels jQuery in einem MVC / Razor Projekt einbauen kann.

image

Den Basis-Style setzen wir zu Beginn, wenn die Seite zum ersten Mal geöffnet wird. Wichtig ist, das wir eine Id setzen, um in unserer jQuery Funktion dieses Element wieder zu finden.

<link id="jQ" href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css")" rel="Stylesheet" type="text/css" />

Um zwischen den Styles zu wechseln, erstellen wir eine Html-ComboBox mit den Namen der einzelnen Styles:

<select id="styles"> <option value="base">base</option> <option value="black-tie">black-tie</option> <option value="blitzer">blitzer</option> <option value="cupertino">cupertino</option> <option value="dark-hive">dark-hive</option> <option value="dot-luv">dot-luv</option> <option value="eggplant">eggplant</option> <option value="excite-bike">excite-bike</option> <option value="flick">flick</option> <option value="hot-sneaks">hot-sneaks</option> <option value="humanity">humanity</option> <option value="le-frog">le-frog</option> <option value="mint-choc">mint-chocolate</option> <option value="overcast">overcast</option> <option value="pepper-grinder">pepper-grinder</option> <option value="redmond">redmond</option> <option value="smoothness">smoothness</option> <option value="south-street">south-street</option> <option value="start">start</option> <option value="sunny">sunny</option> <option value="swanky-purse">swanky-purse</option> <option value="trontastic">trontastic</option> <option value="ui-darkness">ui-darkness</option> <option value="ui-lightness">ui-lightness</option> <option value="vader">vader</option> </select>

Als Script verwenden wir folgenden Codeabschnitt. Die Funktion setzt den gewählten Style und ruft eine Methode im Controller auf, der ggfls. den Style in den Usereinstellungen speichern kann.

<script> $(document).ready(function () $('#styles').change(function () { var style = $(this).val(); $("#jQ").attr("href", "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/" + style + "/jquery-ui.css"); $.post('@Url.Action("SaveStyle", "Home")', { style: style }, function () { return false; }); }); }); </script>

Im Controller dann kann der Name des gewählten Styles weiter verarbeitet werden:

public void SaveStyle(string style) { //save style }

Viel Spaß beim entwickeln : )

by Mario Binder

Google API jQuery UI 1.7.2 Theme Übersicht + Razor-Layout

Im folgenden eine kleine Übersicht von Google API jQuery UI 1.7.2 Designs, so vorbereitet, dass diese schnell im Header eines Razor Layouts eingefügt werden können.

base

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/base/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


black-tie

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/black-tie/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


blitzer

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/blitzer/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


cupertino

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/cupertino/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


dark-hive

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/dark-hive/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


dot-luv

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/dot-luv/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


eggplant

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/eggplant/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


excite-bike

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/excite-bike/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


flick

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/flick/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


hot-sneaks

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/hot-sneaks/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


humanity

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/humanity/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


le-frog

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/le-frog/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


mint-chocolate

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/mint-choc/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


overcast

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/overcast/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


pepper-grinder

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/pepper-grinder/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


redmond

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/redmond/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


smoothness

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/smoothness/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


south-street

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/south-street/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


start

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/start/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


sunny

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/sunny/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


swanky-purse

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/swanky-purse/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


trontastic

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/trontastic/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


ui-darkness

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/ui-darkness/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


ui-lightness

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/ui-lightness/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image


vader

<link href="@Url.Content("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/vader/jquery-ui.css")" rel="Stylesheet" type="text/css" />

image