Вы можете создать страницу HttpHandler (ASHX), который будет принимать строку запроса и установить, что в качестве ImageUrl свойство управления изображением
<asp:image id="imgEmployee" imageUrl="DisplayImage.ashx?employeeId=<someId>"/>
Сейчас в DisplayImage. ASHX, вы можете переопределить ProcessRequest, как показано ниже: -
public void ProcessRequest (HttpContext context)
{
int employeeId;
if (context.Request.QueryString["employeeId"] != null)
employeeId = Convert.ToInt32(context.Request.QueryString["employeeId"]);
else
throw new ArgumentException("No parameter specified");
byte[] imageData= ;// get the image data from the database using the employeeId Querystring
Response.ContentType = "image/jpeg"; // You can retrieve this also from the database
Response.BinaryWrite(imageData);
}
изменения Web.config: -
<httpHandlers>
<add verb="*" path="img/*" type="DisplayImage"/>
</httpHandlers>
here и here.
Надеется, что это помогает ..
Я думаю, что у вас есть вопрос не так. Я должен показать изображение в элементе управления изображениями asp.net не только на веб-странице. – HotTester
@HotTester, приведенный выше код/концепция отобразит изображение в элементе управления IMG. Чтобы объяснить больше, предположим, что у вас есть страница (EmployeeDetails.aspx), где у вас есть элемент управления изображением, образ которого равен «DisplayImage.ashx? EmployeeId = 12». Когда вы запрашиваете страницу «EmployeeDetails.aspx» и когда обрабатывается элемент управления изображением, запрос переходит к DisplayImage.ashx (HttpHandler), который только собирается вывести двоичные данные для изображения, а затем отобразится в элементе управления Image Employee.aspx. Дайте мне знать, если я до сих пор не понял ваш вопрос. –