11
votes

Faire des pages IIS ne rendant pas comme WML. Déjà!

de fond

Je travaille actuellement sur un site mobile afin que je continue à changer d'agent utilisateur tout le temps de Firefox avec Switch utilisateur utilisateur (charmant addon). Mais quand je vais au site d'administrateur, il se rend comme WML , qui fait de Firefox tout confondu, alors il essaie de le télécharger plutôt de montrer le contenu. Et cela me fait frustré (ne pas tomber frustré, mais assez!).

ce que je veux!

Comment puis-je créer notre site d'administration pour toujours envoyer du contenu sous forme de texte text / html au lieu de WML, quel que soit l'agent utilisateur de la demande?

J'ai le contrôle total de la boîte. C'est IIS 6.0.


0 commentaires

7 Réponses :


0
votes

Cela ressemble à celui de votre système d'administration que la case IIS que le site d'administrateur constate à l'appareil mobile et à la modification de la manière dont il appelle votre demande, du HTML standard sur .WML. Vous devrez changer cela dans l'application que je crois.


1 commentaires

Salut, merci pour votre réponse. C'était aussi ma première idée. Mais comme je n'ai pas trouvé de telle chose dans le code, j'ai créé une nouvelle webApplication et l'a essayé avec un agent utilisateur Nokia N95 et obtenu le contenu comme WML. Et si j'essaie de la naviguer avec cet agent utilisateur, je reçois aussi la réponse en tant que texte / vnd.wap.wml. Ce qui me fait penser que ASP.NET utilisez DIFFÉRENTTYPE DIFFÉRENTTYPE pour différents agents utilisateur.



0
votes

Configurez le type MIME pour l'extension WML au texte / html. Vous pouvez également créer une personnalité HTTPHANDLER et pointez la carte de script pour le extension à asp.net. Ensuite, vous pouvez vérifier les conditions vous et forcez le rendu de toutes les manières que vous le souhaitez.


1 commentaires

J'ai essayé de changer le type MIME sur le serveur Web tout ce que je n'avais pas semblé aider. Donc je vais essayer de créer un httphandler personnalisé



0
votes

Vous pouvez remplacer le comportement du serveur avec le ClientTarget Propriété de la page.

dans le code: xxx

dans la déclaration @ page de page: xxx

Malheureusement, je ne pense pas que vous puissiez définir ceci dans le Élément de pages d'un web.config.


1 commentaires

Cela ne résout pas le problème.



1
votes

En tant que solution de contournement (si vous ne parviendrez pas à faire la configuration de l'application), vous pouvez installer Wmlbrowser Add-on pour Firefox https://addons.mozilla.org/en-us/firefox/addon/62 .


1 commentaires

Ne répond pas vraiment à ma question, mais aide-moi à résoudre mon problème :) Cheerio!



8
votes

Si vous souhaitez un changement de non-code / ASPX, vous pouvez ajouter un fichier de fonctionnalités de navigateur dans le dossier App_Browersers directement sous la racine de votre application (si le dossier n'est pas là, créez-le). Pour désactiver le WML, placez simplement un fichier nommé forcerhtml.browser (tout ce qui se termine dans .Browser) contenant le XML suivant:

<browsers>
  <browser refID="Default">
    <capabilities>
      <capability name="preferredRenderingMime" value="text/html" />
      <capability name="preferredRenderingType" value="html32" />
      <capability name="preferredImageMime" value="image/gif" />
      <capability name="tagwriter" value="System.Web.UI.HtmlTextWriter" />
    </capabilities>
    <controlAdapters markupTextWriterType="System.Web.UI.HtmlTextWriter" />
  </browser>
</browsers>


0 commentaires

12
votes

Nous avons eu ce , et puisque nous utilisons Razor avec HTML, les pages ne peuvent pas s'adapter automatiquement. Pour moi, la solution la plus simple consistait à changer le type de contenu dans le _viewstart.cshtml code>: xxx pré>

la maladie "Figurez-vous vous-même" La folie ne se produit que quand rien n'est défini explicitement. Alors ... définissez-le. P>

Vos vues réelles peuvent toujours remplacer ceci: p> xxx pré>

pour info, pour tester ce problème sur votre serveur de devis local (Avec un cache propre pour éviter les fausses résultats des données en cache précédentes), faites quelque chose comme Wget ou Fiddler: P>

Content-Type: text/vnd.wap.wml; charset=utf-8


0 commentaires

2
votes

Utiliser IIS7. Mettre c'est global.asax a fait l'affaire: xxx

hth


0 commentaires