2010-06-08 3 views
1

Pourquoi ce travail:Pourquoi est-ce que je ne peux pas stocker XML dans la valeur ASP.NET ListBox?

ListItem item = new ListItem(); 
string value = lstAvailExtPropsToFilter.SelectedItem.Text +" = "+ txtExtPropToFilter.Text; 
string text = lstAvailExtPropsToFilter.SelectedItem.Text + " = " + txtExtPropToFilter.Text; 
item.Text = text; 
item.Value = value; 
lstExtPropsToFilter.Items.Add(item); 

Mais pas:

ListItem item = new ListItem(); 
string value = string.Format("<key>{0}</key><value>{1}</value>", lstAvailExtPropsToFilter.SelectedItem.Text, txtExtPropToFilter.Text); 
string text = lstAvailExtPropsToFilter.SelectedItem.Text + " = " + txtExtPropToFilter.Text; 
item.Text = text; 
item.Value = value; 
lstExtPropsToFilter.Items.Add(item); 

Répondre

2

Vous devrez échapper à la chaîne de sorte qu'il fonctionne en HTML. Essayez Server.HTMLEncode.

Server.HTMLEncode("<key>{0}</key><value>{1}</value>") 

Ensuite, lorsque vous avez besoin de tirer la valeur, utilisez Server.HTMLDecode.

+0

Magnifique! Merci pour la réponse rapide! BTW, c'est "HtmlEncode" pas "HTMLEncode". – mcass20

Questions connexes