У меня есть страница ASP.NET, где я отображаю некоторую разметку HTML, которая содержит изображение штрих-кода, созданное другой страницей asp.net
<div id='divDynamic'>
<h1>Some content</h1>
<img src='barcode.aspx?mode=something' />
</div>
И в barcode.aspx.cs яесть:
protected void Page_Load(object sender, EventArgs e)
{
Response.CacheControl = "no-cache";
Response.AddHeader("Pragma", "no-cache");
Response.Expires = -1 ;
Response.Buffer = false;
Response.ContentType = "image/JPEG";
MemoryStream ms = new MemoryStream();
System.Drawing.Image objBitmap = GenCode128.Code128Rendering.MakeBarcodeImage(Request.QueryString["mode"] + "", 2,false );
objBitmap.Save(ms ,ImageFormat.Bmp);
Response.BinaryWrite(ms.GetBuffer());
Response.End();
}
Мне нужно использовать ту же функциональность на многих похожих сайтах.Поэтому сейчас я пытаюсь преобразовать это в службу WCF, где будет сгенерирована разметка для div "divDynamic", которая будет отправлена обратно клиенту (веб-сайт asp.net).В моем сервисе есть метод строки возвращаемого типа, который будет возвращать HTMLMarkup, как показано ниже:
public string GetUSPSLabelMarkup()
{
StringBuilder strHtml = new StringBuilder();
strHtml.Append("<h1>Some content</h1>");
// How do I have the barcode image here?
return strHtml.ToString();
}
Мне интересно, как в моем сервисе должна быть часть генерирования изображений в вышеуказанном методе?Я считаю, что Response.BinaryWrite не должен работать здесь.