Я получаю данные из базы данных SQL с именем столбца Nature, гиперссылка должна определяться на основе значения Nature.
Если значение природы равно
- A или B или C: ссылка должна быть "http://www.this.is.test1"
- X или Y или Z: ссылка должна быть" http://www.this.is.test2"
- P или Q или R: ссылка должна быть "http://www.this.is.test3"
Выходные данные на странице должны быть:
Nature Link (имя столбца на странице)
Если значение равно A ----> A (при нажатии на ссылку «A» http://www.this.is.test1 должно открыться)
Если значение равно Q -----> Q (при нажатии на ссылку «Q» http://www.this.is.test3 должен открыться)
Я не могу отобразить значение (A, B, C, P, Q ....) и связанную с ним ссылку.
Tried
1. Использование HyperlinkField в Gridview
<asp:HyperlinkField HeaderText="Nature Link" DataTextField="Nature"
Visible="true" SortExpression="Nature"
DataNavigateUrlFormatString="http://www.this.is.{0}"
DataNavigateUrlFields="Nature" target="_blank"></asp:HyperlinkField>
Код:
protected void dginvoicereport_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType != DataControlRowType.Header)
{
var t_nature= Int32.Parse(e.Row.Cells[25].Text.Replace(" ",""));
if ((t_nature== 'A') || (t_nature== 'B') || (t_nature== 'C'))
e.Row.Cells[25].Text = "test1";
else if ((t_nature== 'X') || (t_nature== 'Y') || (t_nature== 'Z'))
e.Row.Cells[25].Text = "test2";
}
}
2. Это:
<asp:BoundField DataField="nature" HeaderText="Nature Link"
HtmlEncode="False" DataFormatString="<a target='_blank'
href='http://www.this.is.{0}'>Link</a>" /> `