En supposant le code ci-dessous:rendu page ASPX lors de l'exécution de la base de données
public class DynamicAspxHandler : IHttpHandler {
bool IHttpHandler.IsReusable { get { return false; } }
void IHttpHandler.ProcessRequest(HttpContext httpContext) {
string aspxContent = PlainASPXContent();
Page page = CreatePage(httpContext, aspxContent);
page.ProcessRequest(httpContext);
}
Page CreatePage(HttpContext context, string aspxContent) {
// How to implement this?
}
}
comment puis-je implémenter la méthode CreatePage instancier une page basée sur la teneur en chaîne simple de ASPX?
La note est que la chaîne ASPX elle-même peut contenir référence à MasterPage existant sur le disque. Je me rends compte qu'il doit y avoir un énorme problème de performance avec cela, mais à ce stade, je veux juste savoir comment je peux le faire. Évidemment, je vais devoir mettre en cache le résultat.
Merci.
Dans l'attente de la réponse. Ce serait incroyable si c'est possible. Bonne question. –
L'entrée de Gonzalo et Rex ci-dessous est exacte, mais sachez que l'implémentation d'une nouvelle sous-classe VirtualPathProvider requiert des autorisations de confiance complètes (ou a été faite à un moment donné) et peut ne pas être exécutable dans un environnement d'hébergement partagé. – Chris
Oui. La confiance totale est une grosse limitation. Une solution avec une confiance moyenne serait bien sûr préférable, si cela existe. –