目前,我使用JsonResults将服务器端的对象发送到客户端。
当前代码如下:
[HttpGet]
public JsonResult Get()
{
//Create a List object, categoryList which can store anonymous objects later.
List<object> categoryList = new List<object>();
var categoriesQueryResult = Database.Categories
.Where(eachCategory => eachCategory.DeletedAt == null)
.Include(eachCategory => eachCategory.CreatedBy)
.Include(eachCategory => eachCategory.UpdatedBy);
//Loop through each Category entity in the categoriesQueryResult's and add it into categoryList
foreach (var oneCategory in categoriesQueryResult)
{
categoryList.Add(new
{
categoryId = oneCategory.CategoryId,
categoryName = oneCategory.CategoryName,
visibility = oneCategory.Visibility,
displayStart = oneCategory.DisplayStart,
displayEnd = oneCategory.DisplayEnd,
createdAt = oneCategory.CreatedAt,
updatedAt = oneCategory.UpdatedAt,
createdBy = oneCategory.CreatedBy.FullName,
updatedBy = oneCategory.UpdatedBy.FullName,
isSpecial = oneCategory.IsSpecial
});
}//end of foreach
return new JsonResult(categoryList);
}// end of get
现在我想做的是将List转换为ByteArray,然后将转换后的对象作为ByteArray返回给客户端。
我已经尝试过:
[HttpGet]
public byte[] Get()
{
//Create a List object, categoryList which can store anonymous objects later.
List<object> categoryList = new List<object>();
var categoriesQueryResult = Database.Categories
.Where(eachCategory => eachCategory.DeletedAt == null)
.Include(eachCategory => eachCategory.CreatedBy)
.Include(eachCategory => eachCategory.UpdatedBy);
//Loop through each Category entity in the categoriesQueryResult's and add it into categoryList
foreach (var oneCategory in categoriesQueryResult)
{
categoryList.Add(new
{
categoryId = oneCategory.CategoryId,
categoryName = oneCategory.CategoryName,
visibility = oneCategory.Visibility,
displayStart = oneCategory.DisplayStart,
displayEnd = oneCategory.DisplayEnd,
createdAt = oneCategory.CreatedAt,
updatedAt = oneCategory.UpdatedAt,
createdBy = oneCategory.CreatedBy.FullName,
updatedBy = oneCategory.UpdatedBy.FullName,
isSpecial = oneCategory.IsSpecial
});
}//end of foreach
byte[] convertedObject = categoryList.OfType<byte>().ToArray();
return convertedObject;
}// end of get
但似乎不起作用。