Spécifiez le chemin où GridWeb stocke les fichiers temporaires

à propos du cache de fichiers

Spécifiez le chemin où GridWeb stocke les fichiers de session temporaires

L’exemple de code suivant spécifie le chemin où GridWeb stocke les fichiers de session temporaires.

à propos du cache d’images

lorsqu’il y a des formes/images dans la feuille de calcul, GridWeb enregistre toutes les formes/images dans un chemin de cache

le chemin du cache par défaut estSystem.Web.HttpContext.Current.Server.MapPath("/acwcache")

nous pouvons aussi utiliserGridWeb.PictureCachePathGridWeb.PictureCachePath pour définir ce chemin sur un chemin spécifique.

lorsque nous ouvrons une page, GridWeb résoudra l’URL de l’image de demande et obtiendra le flux d’image du cache par l’ID de l’URL.

par exemple, si l’adresse de votre page esthttp://ip/mygridwebapp/test.aspx

l’URL de demande d’image générée par GridWeb sera http://ip/mygridwebapp/test.aspx/acw_image/imageid.

parfois les formes/images ne sont pas chargées lorsque vous utilisezURL amicale.

vous devez vérifier la demande d’URL d’image.

la demande d’image normale doit ressembler à :http://ip/mygridwebapp/test.aspx/acw_image/imageid

mais votre demande va comme ceci :http://ip/mygridwebapp/test/acw_image/imageid

si vous utilisez FriendlyUrl, vous devez filtrer la demande d’URL d’image pour GridWeb.

ainsi, le serveur de contrôle GridWeb peut obtenir et résoudre la demande et trouver le flux d’images à partir du chemin du cache.

par exemple, nous supposons que l’URL de votre page est la suivante :http://ip/mygridwebapp/test.aspx

alors le code ci-dessous est une solution de contournement pour résoudre ce problème.

//write your custom url resolver:MyWebFormsFriendlyUrlResolver
public class MyWebFormsFriendlyUrlResolver : WebFormsFriendlyUrlResolver
{
public MyWebFormsFriendlyUrlResolver() { }

    public override string ConvertToFriendlyUrl(string path)
    {
        if (!string.IsNullOrEmpty(path))
        {//filter your GridWeb related page,here we use 'mygridwebapp' to identify as we assume your page is:http://ip/mygridwebapp/test.aspx
            if (path.ToLower().Contains("mygridwebapp"))
            { // Here the filter code
                return path;
            }
        }
        return base.ConvertToFriendlyUrl(path);
    }
}
//in RoutConfig.cs set the custom url resolver:MyWebFormsFriendlyUrlResolver
public static class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        var settings = new FriendlyUrlSettings();
        settings.AutoRedirectMode = RedirectMode.Permanent;
        routes.EnableFriendlyUrls(settings, new IFriendlyUrlResolver[] {
                             new MyWebFormsFriendlyUrlResolver() });
    }
}