2009-09-28 4 views
0

J'ai un fichier de configuration de taille moyenne dans mon application ASP.NET auquel j'aimerais avoir accès dans mon script côté client. Quelqu'un peut-il penser à un bon moyen de faire en sorte qu'une section de ma configuration soit sérialisée en JSON et rendue disponible en tant qu'URL pouvant être mise en cache? C'est .NET 3.5 et la configuration n'a aucun problème de sécurité.Récupère myCustom.config en tant qu'objet JSON

+0

est-ce pas IIS va arrêter les requêtes GET HTTP direct vers le fichier de configuration? –

+0

yup, mais je ne veux pas le fichier de configuration, je veux une représentation d'objet JSON d'une certaine section de celui-ci. – BozoJoe

Répondre

0

Si vous faites référence au web.config, je suis certain que vous ne pouvez pas y accéder via une URL. Ceci est une fonctionnalité de sécurité ASP.Net native. Vous souhaitez créer une configuration personnalisée dans un emplacement sécurisé et la lire/la mettre à jour via AJAX en utilisant un mécanisme côté serveur tel qu'un IHttpHandler.

+0

IHttpHandler semble être la bonne approche, d'autant plus que j'utilise quelque chose de similaire pour obtenir mon css compressé. – BozoJoe

+0

hé, heureux d'aider :) – pixelbobby

+0

plus de réponses, vous gagnez pixelboy – BozoJoe

0

Je n'ai pas encore essayé cette approche mais je suis sûr que vous la trouverez utile. Vous pouvez utiliser T4 Templates pour créer dynamiquement une classe à partir des sections de configuration. Cela signifie que chaque fois que vous modifiez quelque chose dans cette section de configuration, il sera récupéré par les modèles T4 et disponible pour utilisation dans IntelliSense.

Pour une brève introduction sur les modèles T4 vérifier l'URL suivante:

http://highoncoding.com/Articles/557_Code_Generation_Using_T4_Templates.aspx

+0

Je comprends le concept T4, et pensé à l'utiliser. Connaissez-vous quelqu'un qui utilise avec succès T4? – BozoJoe

+0

Oui, dans le lien ci-dessus, j'ai créé des classes d'entités basées sur la base de données. Consultez le lien ci-dessus! – azamsharp

Questions connexes