ich eine Ashx Datei definiert mit dem folgenden Verfahren haben:konvertieren ASHX Process zu MVC-Controller
public void ProcessRequest(HttpContext context) ...
Ich möchte in der es in einer MVC-Controller, den Code zu bewegen. Es ist alles Code, der leicht in einem MVC-Controller ausgeführt werden kann, aber ich bin mir nicht sicher, ob ich ihn auf eine bestimmte Weise schreiben muss, um auf die gleiche Weise aufgerufen zu werden. Ich habe folgendes versucht:
[HttpPost] //in the TestController
public void Index()
{
var context = HttpContext;
....
Aber es trifft nicht meinen Haltepunkt in der ersten Zeile. Gibt es eine andere Möglichkeit, ich muss es einrichten, um zu replizieren, aufgerufen als ProcessRequest
in einer ASHX-Datei aufgerufen wird?
EDIT: hier ist meine Route config:
routes.MapRoute(
name: "Test",
url: "test/{action}",
defaults: new { controller = "Test", action = "Index" }
);
Überprüfen Sie Ihre Routing und stellen Sie sicher, dass Ihr Beitrag den Controller/Aktion trifft. Wie lautet die URL, die der Client anruft? –
Nur der Stamm des Controllers, da sein Index und die Route mit Index als Standard angegeben ist. Ich habe den Post bearbeitet, um die Route hinzuzufügen. – muttley91
Können Sie mit Fiddler oder Postman manuell zu diesem Endpunkt posten? Wie wird der Endpunkt aufgerufen? Können Sie eine GET-Indexaktion erstellen und nach URL suchen? Wenn Sie manuell darauf zugreifen können, ist das Problem der Clientanruf. –