к ... Страгер смог мне немного помочь. Тем не менее, это все еще не работает совершенно правильно. Нужен кто-то, кто знает и MVC, и JQuery, пожалуйста ...
У меня есть страница с изображением, при нажатии на которое открывается диалоговое окно, в котором можно загрузить файл. После закрытия диалога изображение должно обновляться с тем, что было загружено / сохранено в базе данных ...
Все отлично работает с первого раза. Однако, если я попытаюсь загрузить второе изображение; 1-е изображение все еще отображается. Также не похоже, что мой метод контроллера вызывается во второй раз ... Ниже мой код ...
Я также исключил, что страница кэшируется. Опять же, метод контроллера не вызывается второй раз ...
Контроллер
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult GetImage(Guid parentId)
{
var la = Helper.Service.GetAttachmentByEntity(parentId, MembershipProvider.SecurityTicket).ToList();
la.OrderByDescending(x => x.CreatedDate);
return File(la[0].Data, la[0].ContentType);
}
View
<script type="text/javascript">
$(function() {
var iphcObject = $('#<%=imagePlaceHolderControl.ClientID %>');
iphcObject.children().find('#imageUploadDialog').bind('onClose', function() {
iphcObject.children().find('#image').attr('src', '<%=Url.Action("GetImage", "Image", new { parentId = Model.ParentId }) %>');
});
});
</script>
<asp:Panel ID="imagePlaceHolderControl" runat="server">
<div style="border: solid 1px; width: <%=Model.Width%>; height: <%=Model.Height%>; text-align: center; vertical-align: middle;">
<a href="#" onclick="$('#imageUploadDialog').dialog('open');" title="Add a picture...">
<img id="image" src="<%=Url.Content("~/content/images/icon_individual_blank.gif") %>" /></a>
<%Html.RenderDialog("imageUploadDialog", "Upload image...", "ImagePlaceHolder_Upload", "Image", Model, 235, 335); %>
</div>
</asp:Panel>