Hallo,
danke für die Antwort. Um das Ganze etwas klarer wird, versuche ich eine paar Zeil mehr Code zu schreiben. Ich hoffe, es hilft:
Das ist mein Api Kontroller:
public class MyController : ApiController
{
private readonly IShop _shop;
public MyController(IShop shop)
{
_shop = shop;
}
public IEnumerable<MyModel> Get(int id)
{
var car = _shop.GetCarModel(id);
return View(car);
}
}
und das mein MVC-Controller:
public class HomeController : Controller
{
public ActionResult Edit(int id)
{
using (ShopClient client = new ShopClient())
{
var car = carClient.GetCarModel(id);
return View(car);
}
}
}
Wie man sieht, machen die Methoden Get() und Edit() beide das gleiche. Mit einem Unterschied, dass die Edit-Methode über ein new verfügt, das ich loswerden möchte. Nun habe ich versucht, von da aus direkt auf die Get()-Methode des Api-Controller zuzugreifen, um mein Ziel mit der new-Beseitigung zu erreichen. Dazu habe ich dies versuchet:
var apiController = DependencyResolver.Current.GetService<MyController>();
var test = apiController.Get(2);
Dieser Ansatz funktioniert leider mit Api-Controllern nicht und ich bekomme ein null zurück.
Gruß