Я пытаюсь модернизировать существующее веб-приложение, созданное с использованием веб-форм ASP.NET.Я пытаюсь сделать это, обернув его внутри MVC 3 (Razor) и используя виды оттуда.До сих пор я использовал метод Server.Execute, чтобы получить HTML-контент, который я могу вернуть в виде HTML, и отобразить его в представлении в MVC 3. Он выполняет файл .aspx, например:
var writer = new StringWriter();
ctx.Server.Execute("~/" + aspxPath, writer, true);
string html = writer.ToString();
Для того, чтобы все маршрутизировать через MVC 3, мне пришлось установить для свойства RouteExistingFiles значение true:
RouteTable.Routes.RouteExistingFiles = true;
Это все хорошо, пока я не буду обрабатывать постбэки из форм.Обратная передача работает, если я не установил свойство RouteExistingFiles, но тогда отображается только часть содержимого тела, так как он обходит MVC 3-маршрутизацию.Как вы можете видеть выше, я пытался установить "preserveForm" в true при вызове метода Execute, но безрезультатно.Есть ли способ обработки постбэков в MVC 3, которые происходят из обычной формы в ASP.NET Web Forms?И есть ли другой способ (может быть, совершенно другой), чтобы попытаться решить мою проблему, когда я хочу повторно использовать много файлов .aspx и представить их по-другому в MVC 3?