Надо, чтобы некий aspx внутри страницы вызывался POST-ом. Ну вот хочется встроить в страницу свою логику, но чтоб вся текстовка хранилась в базе.
В частности, в текст статьи в базе встраиваем свою директиву <exec>something.aspx</exec>.
Для вызова собираем QueryString, заполняем Form и вызываем нужный apsx. Упрощенно это выглядит так:
HttpWebResponse rq = WebRequest.Create(url);
rq.Method = "POST";
rq.ContentType = "application/x-www-form-urlencoded";
HttpWebResponse rsp = rq.GetResponse();
Stream receiveStream = rsp.GetResponseStream();
Вроде, как-то работает. Но не устраивают следующие моменты:
1. Как передать данные FileUpload? Как их запихать в новый WebRequest? Если с Request.Form понятно, их пишем rq.RequestStream().Write(...). А куда файл запихать?
2. Эта зараза запускает aspx в другой сессии. Как объехать?
3. Едет форматирование. Например, "<asp:textbox runat="server" id="tb_email" width="400px" />" оформляется "<input name="ctl00$Content$tb_email" type="text" id="ctl00_Content_tb_email" />", то есть, без ширины, хотя при автономном запуске все нормально.
В частности, в текст статьи в базе встраиваем свою директиву <exec>something.aspx</exec>.
Для вызова собираем QueryString, заполняем Form и вызываем нужный apsx. Упрощенно это выглядит так:
HttpWebResponse rq = WebRequest.Create(url);
rq.Method = "POST";
rq.ContentType = "application/x-www-form-urlencoded";
HttpWebResponse rsp = rq.GetResponse();
Stream receiveStream = rsp.GetResponseStream();
Вроде, как-то работает. Но не устраивают следующие моменты:
1. Как передать данные FileUpload? Как их запихать в новый WebRequest? Если с Request.Form понятно, их пишем rq.RequestStream().Write(...). А куда файл запихать?
2. Эта зараза запускает aspx в другой сессии. Как объехать?
3. Едет форматирование. Например, "<asp:textbox runat="server" id="tb_email" width="400px" />" оформляется "<input name="ctl00$Content$tb_email" type="text" id="ctl00_Content_tb_email" />", то есть, без ширины, хотя при автономном запуске все нормально.
эгоист - это человек, который думает в первую очередь о себе и только потом обо мне