Это простой вопрос, на который я смотрю ваш вклад.
Я ищу лучшую практику для замены фрагмента текста из кода в буквальном элементе управления.
Разметка aspx выглядит следующим образом, и я заменяю значение в ссылке, где написано {0}:
<asp:Literal runat="server" ID="litViewLightingCollections" Visible="false">
<span class="disclaimer">
<div style="padding-bottom:5px;">
<a href="/LightingCollections/{0}/default.aspx" >
<img src="/images/productdetail/elements/icon-lighting-collections.gif" border="0" align="absmiddle"> Lighting Collections
</a>
</div>
</span>
</asp:Literal>
Итак, что я сделал для вызова string.format в тесте, который отлично работает:
litViewLightingCollections.Visible = true;
litViewLightingCollections.Text = String.Format(litViewLightingCollections.Text, lightingDictionary[category]);
И это прекрасно работает, однако есть и другие способы сделать это.
Какой самый лучший и самый легкий способ сделать это?
- Я мог бы иметь другой буквальный элемент управления в теге href и установить его значение
- Я могу создать заполнитель в тексте, например {replaceme}, и вызвать String.Replace для lit.text
- Поместите свойство в коде и используйте <% = Property%> (мне действительно не нравится это, так как оно создает много свойств на странице)
- Размещение элемента управления гиперссылкой в литерале (против легкого веса)
- Какие есть другие варианты?