J'ai la configuration suivante. J'ai une application web et dans le .css de cette application je définis une image de fond à présenter lorsque je survole un élément.HttpHandler sur un fichier dans ASP.NET MVC
Je veux un script ou quelque chose de ce genre qui se trouve sur le serveur et lorsque l'on accède à l'image, il appelle une action sur l'application. Malheureusement, je n'ai aucune idée par où commencer.
Je veux savoir si et quelques conseils sur la façon d'écrire un composant côté serveur qui exécute une action dans une application web basée sur la demande d'un fichier par css.
Je suis sur Windows7, ASP.NET MVC.
EDIT
Alors, j'ai suivi vos suggestions sur l'utilisation httpHandlers. Cela semble être la solution parfaite. Cependant, je rencontre des problèmes.
J'ai suivi ce lien très utile http://www.phpvs.net/2009/08/06/aspnet-mvc-how-to-route-to-images-or-other-file-types/ mais j'étais juste incapable d'obtenir un coup sur une route
routes.Add("ImageRouting", new Route("Content/themes/base/images/{filename}.png", new ImageRouteHandler()));
Mon seul autre itinéraire est celui généré par défaut par modèle MVC.
J'ai donc compris que les demandes à un fichier ne sont pas traitées par défaut par MVC. J'ai donc dû résoudre ce problème en définissant la propriété RouteExistingFiles
du RouteCollection
sur true
.
Maintenant, je reçois des hits appropriés sur mes images, mais pour une raison quelconque, Site.css
situé dans le dossier Content
n'est pas utilisé pour le style du code HTML résultant.
Des suggestions?
Voulez-vous dire par « lorsque l'image est accessible » lorsqu'elle est demandée par un client? Cela casserait, par exemple. si le navigateur précharge les ressources. Qu'est-ce que vous essayez d'atteindre, et OS et serveur web êtes-vous? –