1, template model
is model, something like
public class TemplateDetails : Template
{
public string Author { get; set; }
public string Tags { get; set; }
public string Categories { get; set; }
public string Types { get; set; }
}
2, core code
[WebGet]
public List<Template> TemplateThumbnail() //for return more than one record, use List<class>
{
List<Template> result = new List<Template>(); // remember need new it
Template tt = null;
int i = 0;
var ts = Cache.Templates.OrderBy(n => Guid.NewGuid());
foreach (var t in ts)
{
if (t != null && t.State >= Template.States.open)
{
i++;
tt = new Template
{
Thumbnail = t.Thumbnail,
Id = t.Id,
Name = t.Name,
Description = t.Description,
docPic = t.docPic,
Width = t.Width,
Height = t.Height,
Price = t.Price,
};
result.Add(tt);
if (i >= 10)
{ break; }
}
}
return result;
}
3, Web Service Return Image as byte[] (byte array)
[WebGet]
public byte[] imageservice()
{
System.Net.WebRequest request =
System.Net.WebRequest.Create(
"http://www.microsoft.com//h/en-us/r/ms_masthead_ltr.gif");
System.Net.WebResponse response = request.GetResponse();
System.IO.Stream responseStream =
response.GetResponseStream();
Bitmap bitmap = new Bitmap(responseStream);
//Bitmap bitmap = new Bitmap(@"~\Content\4pm.jpg");
MemoryStream stream = new MemoryStream();
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter formatter = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
formatter.Serialize(stream, bitmap);
return stream.ToArray();
}