0
Я работал в MVC проекта, и я использовал следующий код для загрузки изображения:Загрузить изображение с веб-метод
cshtml
<img src="@Url.Action("GetImage", new { imageUrl =
@asset.ImageUrl })" />
C#
public void GetImage(string imageUrl)
{
try
{
using (WebClientExtension client1 = new WebClientExtension())
{
byte[] imageBytes = client1.ExecuteRequest(imageUrl);
if (imageBytes.Count() == 0)
throw new Exception();
HttpContext.Response.ContentType = "image/jpeg";
HttpContext.Response.OutputStream.Write(imageBytes, 0, imageBytes.Length);
}
}
catch (Exception)
{
String FilePath;
FilePath = Server.MapPath("/Images/no_image.png");
byte[] imageBytes = System.IO.File.ReadAllBytes(FilePath);
HttpContext.Response.ContentType = "image/jpeg";
HttpContext.Response.OutputStream.Write(imageBytes, 0, imageBytes.Length);
}
}
Все работало нормально, и теперь моя проблема заключается в использовании этой страницы на ascx. Очевидно, @Url.Action("GetRenditionImage", new { renditionUrl = @asset.RenditionUrl })
не будет работать в ascx. Как я могу назвать веб-метод для достижения этого?
Ну, в отличие от mvc, мне нужно было указать весь путь к веб-методу, а не только имя действия. Благодарю :) – Sharun