1

検索すると、ダウンロード用の動的 URL の結果が得られたので、この質問をするのはおそらく正しいタイトルではありません。それは私が望んでいるものではありません...(少なくともそうではないと思います)

私の問題は、例としてニュースレターのリストを動的に作成する必要があることです。リストは、C# コードと Response.Write() のループを使用して作成されます。ソースは、ニュースレターの場所のソース、日付、名前だけを含むデータベースからのものです。コードの基本的な出力は次のとおりです。

|News Letters
|Date:       |Name:        |View button: |Download link:  |
|7/01/2013   |June News    |   [View]    |   [Download]   |
|8/01/2013   |July News    |   [View]    |   [Download]   |

多かれ少なかれ... テーブルはループで生成されるため、任意の長さにすることができます。

個々のニュース レターのダウンロードを実装するにはどうすればよいですか? HTML コードは通常のテーブルを使用しているだけで、表示ボタンはソースへの href リンクです。

4

2 に答える 2

4

情報を返そうとしている方法については 100% ではありませんが、これは SqlDataReader を取り、データ リーダーの応答の各行をテーブルの新しい行に追加し、HTML 文字列を作成します。

StringBuilder sb = new StringBuilder();
        sb.Append("<table><th>Date</th><th>Name</th><th>View</th><th>Download</th>");


        while (sqlDataReader.Read())
        {
            sb.Append(string.Format("<tr><td>{0}</td><td>{1}</td><td>{2}</td><td><a href='{3}' download>Download</a></td></tr>", sqlDataReader["Date"], sqlDataReader["Name"],
                          sqlDataReader["LocationSource"], sqlDataReader["LocationSource"]));
        }

        sb.Append("</table>");

        return sb.ToString();

リンクタグ内にダウンロードを入れたことに気付きました。これは HTML 5 の機能で、ブラウザーで開くのではなくダウンロードを強制します。詳細はこちら リンクをクリックした後にブラウザーにファイルを保存するよう強制する

于 2013-07-11T12:48:53.493 に答える
2

HTML5 を使用している場合は、href リンクの末尾に「ダウンロード」という単語を追加するだけです。

<a href="link to newsletter.pdf" download>Download link</a>

これにより、通常のように pdf を開く代わりにダウンロードが強制されます。

幸運を!

于 2013-07-11T13:46:08.513 に答える