0

私はコンピューターサイエンスを専攻しているシニアです。私はウェブ開発が初めてです。MS SQL Server で ASP.NET C# を使用しています。データベースから Web ページに画像をロードする方法を理解しようとしています。次のコードでこれを成功させました。

<asp:Image ID="imageClient" runat="server" style="width:100px; height:100px;"/>

protected void LoadImage() 
{
    ModelDataContext mdc = new ModelDataContext();

    byte[] image = (from c in mdc.Clients select c.Logo).FirstOrDefault().ToArray();
    string base64String = Convert.ToBase64String(image, 0, image.Length);
    imageClient.ImageUrl = "data:image/jpg;base64," + base64String;
}

現在、私は1つの画像に対してそれを行っています。最終的にはリピーターを使用して、同じページに複数の画像を表示する予定です。

問題は画像の読み込みです。使用するマスターページに奇妙なことをします。CSS をマスターページに適用していないかのようです。しかし、数秒後には元のように見えます。他のページには他に読み込みの問題がないため、問題は間違いなく画像の読み込みにあります。

私が見ているものの写真を投稿しようとしましたが、私の評判は低すぎます.

問題はブラウザ固有のものではなく、すべての主要なブラウザで同じことを行います...誰かが問題を解決してくれれば、それは素晴らしいことです.

/ ############################ / 編集: 表示しようとしていた画像のファイルサイズが大きすぎて、データベースから画像を取得して画像をロードするのに時間がかかりすぎていました。私の新しいアプローチは、画像をプロジェクト内のフォルダーに保存し、画像の実際の場所を参照するためにデータベースに imageurl を保存することです。

これは、私が Web Dev で高度になるにはほど遠いことを念頭に置いた最善のアプローチですか?

ありがとう

4

1 に答える 1

0

イメージをフォルダーにキャッシュすると、データベースの負荷が軽減されるなどの利点があります。Web ページがビジーな環境 (つまり、多くのユーザー) にある場合は、データベースの負荷を減らすことができるすべてをキャッシュすることが望ましいです。

最初のイメージタグについて。私が覚えている限り、asp:Image は html の img タグのように Style タグをサポートしていません。スタイルシートで css を定義する (またはページに埋め込む) 必要があると思います。代わりに CssClass タグを使用して参照するか、代わりにコードで .Style("property") = "mysetting" を使用します。

例:

imageClient.Style("Width") = "100px"
imageClient.Style("Height") = "100px"
于 2012-10-11T04:45:34.980 に答える