2011-05-13 11 views
1

私はユーザーが画像を検索できるようにするウェブサイトを作成しようとしています。 イメージ用のローカルデータベース(いくつかのイメージがあるフォルダ)を作成しました。データのタイトル、picURL、およびキーワードは3つあります。URLからC#で書かれたウェブサイトの画像を表示

私のデフォルトのページでは、テキストボックスと検索ボタンを設定しました。私がしたことは:

string query = "SELECT picURL FROM imagedatabase WHERE [keyword] = '" + keyword + "'"; 

[キーワード]は、ユーザーがテキストボックスに入力したものの1つです。

これでデータベースに画像がある場合、そのURLを取得しました。しかし、どのようにして.aspxにイメージを表示できますか?イメージを表示するために私ができる特定のコマンドや何かのようなものですか?

おかげ


EDIT:

は、だから私はこのようなコード変更:私のhomepage.aspxで

を、私はこれに追加:

<asp:Image ID="Image1" runat="server" ImageUrl="Image1.ImageUrl" /> 

とで私のhomepage.aspx.cs、私はこれを書いた:

protected void btnImageSearch_Click(object sender, EventArgs e) 
{ 
    ImageSearch(); 
} 
private void ImageSearch() 
{ 
    string ImageURL; 
    ImageURL= Process.KeywordSearch(txtSearch.Text); 
    Image1.ImageUrl = ImageURL; 

} 

と私のProcess.csで、私はこれを書いた:

public static string KeywordSearch(string keyword) 
{ 
    string query = "SELECT imagepath FROM tbimage WHERE [title] = '" + keyword + "'";  

    return query; 

} 

私はこれらすべてを書いた後、私はデバッグしようとしました。キーワードを入力しましたが、画像が表示されませんでした。 私はProcess.csで知っているので、クエリはデータベースのURLを取得します(URLはC:\ ....のようです) したがって、Image1.ImageUrlはそのURLと等しくなければなりません。しかし

ならば、私は疑問に思って、これは本当にImage1.ImageUrlを得ることができますか?画像が表示されなかったためです。

ホープ誰かがあなたがasp.netのImageコントロールを使用して、画像のURLにそのImageUrlプロパティを設定することができ、このために

答えて

3

を助け、感謝することができます。この

<asp:Image ID="Image1" runat="server" /> 

と分離コード

Image1.ImageUrl = query; 

同様

1保存に従うか、 フォルダにあなたのイメージを移動しています。
2このフォルダをソリューションまたはプロジェクト に追加します。 イメージ名のみ(物理パスではない) データベースから取得します。 ImageUrlプロパティを仮想パスに設定します。

+0

ちょっとあなたが言ったことに続き、問題がありました。私は、私が持っている問題についてより多くの情報を提供するために投稿を編集しました。ありがとうございます –

+0

@Ric: 'ImageUrl =" Image1.ImageUrl "を間違って削除してください。私の更新された回答を見てから、私に知らせてください。 – jams

+0

もう1つは物理パスを使用していますが、イメージコントロールは仮想パスのみです。 – jams