| 

.NET C# Java Javascript Exception

4
Hallo,

folgende Überlegung:
Für zwei Mandanten soll es jeweils eine ChildView geben. Je nach angemeldeten Mandant, ist entweder die eine oder andere Ansicht aktiv.
Für jede ChildView soll es einen eigenen Web API Controller geben. Beide Web API Controller sollen aber über die gleiche URL aufgerufen werden.

bspw.
Mandant 1:
api/products/filters?param1=abc&param2=xyz;


Mandant 2:
api/products/filters?param3=1&param4=true;


Die Frage ist, ob
a) dies ein sinnvoller Weg ist?
b) wie die Umsetzung aussehen kann?

Danke im Voraus.
10.12.2015
lbm1305 849 1 8
lbm1305 849 1 8
1 Antwort
1
zu a)
Ob das sinnvoll ist, dürfte nur anhand der fachlichen Anforderungen/Rahmenbedingungen zu entschieden sein. Aus technischer Sicht würde ich zumindest ein Fragezeichen setzen, denn wo zwei Mandanten sind ist der dritte auch nicht weit.

zu b)
Irgendwie musst Du entscheiden können, zu welchem Mandanten ein Request gehört. Wenn das gegeben ist könnte ich mir verschiedene Ansätze vorstellen, z.B.:
- alle Routes verdoppeln und mit einem Constraint für den jeweiligen Mandanten qualifizieren
https://msdn.microsoft.com/en-us/library/system.web.routing.irouteconstraint%28v=vs.110%29.aspx
- eine eigene ControllerFactory, die anhand des Mandanten und einer zusätzlichen Namenskonvention den Controller instanziert
https://msdn.microsoft.com/en-us/library/system.web.mvc.icontrollerfactory%28v=vs.118%29.aspx
http://www.codeproject.com/Tips/732449/Understanding-and-Extending-Controller-Factory-i
- Areas könnten auch eine Option sein.
http://www.asp.net/mvc/videos/mvc-2/how-do-i/aspnet-mvc-2-areas


HIH,
Alexander
17.12.2015
SDX Flurfunk 995 2 4
Hallo Alex,

Danke erstmal für Deine Antwort.
Ich schau mir mal die Links an. Eventuell kann man dann daraus seine Schlüsse ziehen.
lbm1305 18.12.2015

Stelle deine .net-Frage jetzt!