0

私は画像を持っていて、メソッドで画像のURLを取得したい.私はウェブ上でこの質問を見つけました.しかし、答えは完全ではありません. ソースは次のとおりです。

<img id="largeImage" src='<%#ShowLast() %>' alt="" />

cs ファイルを次のようにします。

 public string ShowLast()
        {
            using (DBMLDataContext dc=new DBMLDataContext())
            {
                var query = (from d in dc.News
                             select d).Last();
                return query.Photo.ToString();
            }

        }
4

2 に答える 2

1

何が起こっていますか?これをデータバインドされたコントロール内で使用している場合<%#は正しいです。そうでない場合は<%=、出力をエンコードするバリエーションの 1 つを使用するか、より良い方法を使用する必要があります。

あなたのコメントに基づいて、<asp:Image>コントロールを使用し、コードビハインドでそのImageUrlプロパティを設定する必要があるようです。

マークアップ:

<asp:Image runat="server" id="largeImage" GenerateEmptyAlternateText="True" />

コードビハインド:

// in page load
largeImage.ImageUrl = ShowLast();

このアプローチで私が考えることができる唯一の落とし穴は、CSS などで ID "largeImage" を使用している場合です。それをasp.netコントロールに変換すると、IDを制御できるようになるため、CssClassプロパティを使用してcssを介してターゲットにする必要があります。または、最新バージョンの.netを使用している場合は、IDを設定する他のオプションもあります静的 ID に - これが問題である場合は再度更新します。

于 2013-08-16T07:21:37.867 に答える
0

このようにメソッドを呼び出すことができます

<img id="largeImage" src='<%= ShowLast() %>' alt="" />

メソッドが URL を文字列で返す場合

于 2013-08-16T07:25:21.440 に答える