我试图用他们的图像显示多个用户名所以,我有一个像这样的 Json 操作方法:
public JsonResult GetUsers()
{
var ret = (from user in db.Users
orderby user.UserName
select new
{
UserName = user.UserName,
Pic = GetFileData(user.Id),
}).AsEnumerable();
return Json(ret, JsonRequestBehavior.AllowGet);
}
这是我的GetFileData
获取用户图像的方法:
public FileResult GetFileData(int Id)
{
var avatarImage = db.Files.SingleOrDefault(s => s.ApplicationUserId == Id);
return File(avatarImage.Content, avatarImage.ContentType);
}
Here, ApplicationUserId
是与 File 相关的外键并且ApplicationUser
class.
现在,当我运行查询时,我应该获取带有他们图片的用户名但是我得到了System.NotSupportedException
.完整的错误信息是:
LINQ to Entities 无法识别该方法
'System.Web.Mvc.FileResult GetFileData(Int32)' 方法,以及此方法
无法转换为存储表达式。
如何解决它。我见过很多与它相关的 stackoverflow 问题,但没有一个问题与 FileResult 有关。查看页面的代码在这里http://pastebin.com/AyrpGgEm http://pastebin.com/AyrpGgEm