Обновление изображения на главной странице - PullRequest
0 голосов
/ 09 февраля 2010

У меня есть контроль изображения (для логотипа) на главной странице следующим образом:

<asp:Image ID="imgLogo" ImageUrl="~/Images/logo.jpg" runat="server" />

Я разрешаю своим пользователям загружать свои собственные логотипы.Поэтому на странице, где они загружают свой логотип, я хочу заменить существующий логотип на новый загруженный логотип.Я пробовал следующее, но ни один из них не работал:

1) Сделал Response.Redirect обратно на ту же страницу, и он не работал.

2) Попробовал приведенный ниже код после изображениязагрузка завершена, и даже это не сработало:

Image imgLogo = (Image)Master.FindControl("imgLogo");
            imgLogo.ImageUrl = "~/Images/newLogo.jpg";

Ответы [ 2 ]

0 голосов
/ 09 февраля 2010

Хорошо работает на моей машине - уверен, что файл заканчивается там, где вы думаете?

В качестве альтернативы, что вы делаете после завершения действия? Вы устанавливаете ImageUrl в OnLoad или подобное? При этом вы проверяете, что у вас нет обратной передачи?

Код:

    public partial class WebForm1 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        string filename = string.Format("~/Images/{0}.jpg", Guid.NewGuid().ToString());
        FileUpload1.SaveAs(MapPath(filename));

        Image imgLogo = (Image)Master.FindControl("imgLogo");
        imgLogo.ImageUrl = filename;
    }
}
0 голосов
/ 09 февраля 2010

Попробуйте объединить оба подхода: сделать Response.Redirect и заменить ImageUrl при загрузке страницы.

...