EF 데이터베이스 우선 접근 방식과 MVC 4.5/Web API를 사용하여 웹 응용 프로그램을 만드는 가장 단순하고 최상의 방법을 찾고 있습니다. 내 응용 프로그램은 각도 프레임 워크를 사용하여 요구에 따라 json 데이터를 검색하기 위해 ajax 호출을 수행합니다.웹 프레임이 포함 된 Entity Framework 5
현재 API 호출에 대한 응답으로 과도하고 구조화되지 않은 데이터가 표시되며이를 정리하는 방법을 알고 싶습니다. 내가 얻을 것
이Person
Id
Name
Email
Department : FK -> Department
Department
Id
Name
Jobs
Id
RequestedBy : FK -> Person
AssignedTo : FK -> Person
JobHistory
Id
JobId : FK -> Jobs
그래서, 이상적으로 나는
$http.get(/api/People)
를 호출 할 때 :
[{Name: 'alice', Email: '[email protected]', Department: 'ABC'},
{Name: 'bob', Email: '[email protected]', Department: 'CDE'}]
내 생각
응용 프로그램은 내가 같은 테이블이 작업이 너무 추적 제공 즉, 은 일반적으로입니다. 주체가 열심히로드되지만 n Person에 대한 종속성을 가진 다른 모든 테이블. 그러나 개인이 작업 중이거나 요청한 모든 작업을 얻기 위해 이러한 참조를 사용하고자 할 때가있을 것입니다.
가능하다면 T4 템플릿을 수정하는 등의 작업을하지 않아도됩니다. 그것이 영리한 동안, 그것은 매우 유연하지 않습니다. 또한 필자는 전동 공구가 주어진다는 생각을 싫어하며 사용하기 전에 회로도를 연구하고 내부를 다시 배선해야한다고 말했다. 저는 전문 개발자가 아니며 도구가 아니라 업무에 집중하기를 원합니다. Linq2Sql은 매우 좋았습니다. 물론, 내장을 수정하는 것이 정답이면, 나는 그것을 취할 것입니다.
이렇게 웹 API를 직접 사용하는 것처럼 보이기 때문에 나는 분명히 뭔가 빠져 있다고 느낍니다.
감사
편집 가능성이 내 문제의 일부를 일으키는
추가 정보. 어떤 점에서, 위의 작업을 얻기 위해, 내가 Global.asax.cs에 다음과 같은 추가 : 열망로드와
GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.All;
을 순환 참조에 사람의 결과를 참조 채용에서 두 개의 필드. 위의 코드는 Json.Net이이를 직렬화 할 수있게하지만 원치 않는 데이터로 json을 채 웁니다. 솔루션은 어떻게 든 게으른 로딩으로 전환하는 것이지만 이것이 데이터베이스의 첫 번째 접근 방식으로 수행 될 수 있다고 생각하십니까?
자습서 등을 모두 읽은 것으로 보입니까? 여기를 참조하십시오 : http://www.asp.net/web-api/overview/creating-web-apis/using-web-api-withentent-framework/using-web-api-withentent-framework,- part-1 –
예, 자습서가 좋습니다. 작동하지 않는 것은 아닙니다. 문제는 내가 돌아 오는 json이'{$ id : "1", $ values : [{$ id : "2", Departments : {$ id : "3", Jobs : {$ id : " $ {value : [2]}, {$ id : "6", 부서 : {$ ref : "3" }, Jobs : {$ id : "7", $ values : [{$ id : "8", ...' – bob