コントロール DataGrid を使用する場合、このタイプの列を完全に使用できます。
<asp:HyperLinkColumn DataNavigateUrlField="url_doc" DataTextField="des_doc" HeaderText="Document">
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:HyperLinkColumn>
「url_doc」は、次の値を持つストアド プロシージャから取得されます。
selet '../Documentos/'
|| res.cod_op
|| '/'
|| tdo.des_tipo_doc
|| '/'
|| '01'
|| '/'
|| res.file_name as URL_DOC
from MyTable
URL_DOC には、asp.net プロジェクトのサブ フォルダーに含まれるドキュメント ファイルのパスが格納されます。HyperLinkColumn をクリックすると、そのドキュメント ファイルを開くことができます。
ここで、GridView を使用しようとすると、HyperLinkColumn ほど優れた列が見つかりません。GridView を使用する場合、HyperLinkField を次のように使用しようとしました。
<asp:HyperLinkField
DataNavigateUrlFields="url_doc"
DataTextField="des_doc"
DataNavigateUrlFormatString="url_doc" />
ただし、HyperLinkField をクリックすると、プログラムは、変数 url_doc に含まれるパスではなく、「url_doc」という名前のファイルを開こうとします。
この場合、どのように進めるか考えていますか?