I think you are not referring the code properly.
- I have set OnItemDataBound event for both the DataList.
- Your image mime type is not correct in base64String
(e.Item.FindControl("imgImage") as Image).ImageUrl = "data:image/png/jpg;base64," + base64String;
I have corrected it to
(e.Item.FindControl("imgImage") as Image).ImageUrl = "data:image/png;base64," + base64String;
3.
For price you have set Byte[]
new DataColumn("Price",typeof(byte[])) });
I have replaced it to
new DataColumn("Price",typeof(int)) });
Please check all the code once again.