2010-11-04 3 views
0

J'ai été chargé de créer un fichier xml de ressources pour le contenu statique de notre site Web afin que nous puissions rechercher le contenu de ce fichier xml par rapport à un identifiant particulier et l'afficher. Par exemple, si nous avons écrit « Bienvenue xyz.com » sur notre page d'accueil, il doit être stocké dans le fichier xml commeresource fichier xml

<word> 
    <add Key="welcome" value="Welcome to xyz.com" /> 
</word> 

<word> 
    <add key="key1" value="some other static content" /> 
</word> 

donc nous serons en mesure d'afficher le texte par id = « bienvenue » .. aide de plz.

accéder au fichier de ressources comme

string key = "Home"; 
      string resourceValue = string.Empty; 
      string resourceFile = "Resource";//name of my resource file Resource.resx 

      string filePath =System.AppDomain.CurrentDomain.BaseDirectory.ToString(); 

      ResourceManager resourceManager = ResourceManager.CreateFileBasedResourceManager(resourceFile, filePath, null); 


      resourceValue = resourceManager.GetString(key); 

et obtenir l'erreur suivante

Could not find any resources appropriate for the specified culture (or the neutral culture) on disk. 
baseName: Resource locationInfo: <null> fileName: Resource.resources 
+0

Vous n'avez pas vraiment posé de question spécifique. Qu'est-ce qui te dérange? –

+1

Examinez les fichiers Resource (resx) dans Visual Studio. –

+0

Je ne sais pas comment le faire, je sais qu'il faut mal utiliser un lecteur de xml mais comment exactement? – Rafay

Répondre

2

Essayez un format XML comme ceci:

<Page Id="Home"> 
    <Elements> 
     <Element Id="welcome"> 
      <Value>Welcome to xyz.com</Value> 
     </Element> 

     <Element Id="key1"> 
      <Value>some other static content</Value> 
     </Element>  
    </Elements> 
</Page> 

Pourquoi? Ma première pensée est que chaque page a besoin de son propre identifiant. J'ai donc montré une page appelée "Home" avec deux éléments. En outre, en utilisant des balises plutôt que des attributs, vous pouvez utiliser les sections CDATA [http://en.wikipedia.org/wiki/CDATA] au cas où vous auriez des caractères qui doivent être échappés. Sinon, vous devrez transformer <,>, & et cela devient moche.

<Element Id="key1"> 
    <Value><![CDATA[some other static content with < > in it!]]></Value> 
</Element> 

Ou que diriez-vous que vous voulez inclure un div? avec une classe?

<Element Id="key1"> 
    <Value><![CDATA[<div class="wrapper">some other static content with in it!</div>]]></Value> 
</Element> 

C'est mieux.

En général, j'utilise des balises plus que des attributs. Il est plus facile de trouver des balises en utilisant XPath.

+0

tnx Anthony, je vais essayer votre sol, j'espère que ça marche – Rafay

Questions connexes