얘들 아, 나는이 문제를 ... 참있어JSON + LazyLoad
내 사용자 클래스 속성 UserType을의 유저 유형 아래와 같이있다 :처럼, 나는 JSON을 반환 할 수
public class User
{
public virtual int Id { get; set; }
public virtual string User { get; set; }
public virtual string Name { get; set; }
public virtual UserType userType { get; set; }
}
:이 ...A circular reference was detected while serializing an object of type 'System.Reflection.RuntimeModule'.
[HttpGet]
public JsonResult JSONUsers(string q)
{
IEnumerable<User> model = dataServ.Users.GetUsers(q);
return this.Json(new { Result = model }, JsonRequestBehavior.AllowGet);
}
나는 오류를 받고 있어요 나는이 오류를 받고 있어요
이유는 (그게 내가 이해 무엇 적어도), 그리고 가난을 해결하기 위해 게으른 -로드, 내가 그랬어 :
public JsonResult JSON(string q)
{
List<User> model = new List<User>();
IEnumerable<User> users= dataServ.Users.Getusers(q);
foreach (var item in users)
{
User user = new User
{
Id = item.Id,
Name = item.Name
};
model.Add(user);
};
return this.Json(new { Result = model }, JsonRequestBehavior.AllowGet);
}
내가이는 생각하지 않습니다 좋은 해결책. 이 경우에는 "Id"및 "Name"속성 만 있으면되지만 모든 속성이 필요한 경우에는 어떻게합니까? 하나씩 복사해야합니까? 더 나은 해결책이 있다면 누구나 말해 줄 수 있습니까?
감사합니다,
티아고
좋아요,보기 모델을 사용할 수는 있지만 비슷한 클래스가 2 개 있습니다. 이것은 정말 좋은 선택입니까? 너의 지식을 나누기위한 Tks. – Thiago
@ Thiago Guttierre, 그들 사이에 순환 참조가 없을 것입니다. 그래, 그들은 (AutoMapper (http://automapper.codeplex.com/)가 유용 할 때와 유사 할 것입니다.) ASP.NET MVC로 작업 할 때 모범 사례로 간주됩니다. –