세부 양식, datagridview 및 bindingnavigator가 모두 동일한 데이터 소스에 바인딩 된 winforms 앱이 있습니다. 엔티티 프레임 워크 (데이터베이스 우선)를 사용하고 있습니다. 사용자는 datagridview에서 레코드 그룹으로 작업합니다. 한 번에 수백 개이지만 아마도 수천 개입니다. bindingnavigator는 현재 메모리에로드 된 레코드 수를 보여줍니다.
세부 정보 양식은 "편집"버튼을 누를 때까지 비활성화됩니다. 편집하기로 결정할 때 dbContext를 단일 레코드로 제한하는 실용적인 방법이 있습니까? 내 생각에 dbcontext는 컨트롤에 바인딩 된 데이터 소스에 연결되어 있습니다.
msdn.microsoft.com/en-us/data/jj682076.aspx와 같은 예제에서는 dbcontext를 사용하여 엔티티의 전체 목록을 선택하고 datagridview에 바인딩하고 context.SaveChanges ()를 사용하여 업데이트하는 방법을 설명합니다. 데이터베이스. winforms에서 여러 레코드로 작업 할 때 컨텍스트를 단일 레코드로 제한하는 방법에 대한 좋은 예를 아직 찾지 못했습니다.
단순히보기 목적으로로드 할 때 EF 개체를 dbContext에 바인딩하면 안됩니다. dbContext는 * CRUD 작업을 수행해야하는 경우 에만 사용해야 합니다. 컨텍스트는 장기간 열리지 않아야합니다.
dbContext를 생성 한 위치에 게시해야하며 데이터를로드 한 후 컨텍스트를 닫아야합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다