LINQ에서 SQL에 대한 DataGridView는 DB 컨텍스트에 다른 곳에 추가 된 새 행이 표시되지 않습니다.

StackOverflow https://stackoverflow.com/questions/815043

  •  03-07-2019
  •  | 
  •  

문제

나는있다 DataGridView LINQ에서 SQL 쿼리 표현식에 결합합니다. 업데이트를 위해 편집 할 수 있기를 원하지만 인서트의 경우 사용자가 그리드 아래에 별도의 컨트롤 (텍스트 상자, 날짜 선택기 등 - 현재 아무것도 묶이지 않음)을 사용하기를 원합니다. 컨트롤의 값을 기반으로 LINQ에서 SQL Entity 클래스의 객체를 생성하는 "ADD"버튼이 있습니다. InsertOnSubmit(). 나중에 전화 할 때 SubmitChanges(), 그리드의 모든 업데이트 및 추가 된 객체는 모두 데이터베이스에 올바르게 지속됩니다.

내 문제는 호출 전후에 새로운 객체가 그리드에 추가되지 않는다는 것입니다. SubmitChanges(). 새 객체가 생성되는 즉시 그리드에 추가되기를 원합니다. 또한 기존 레코드를 편집하지 않고 새 레코드를 삽입하는 데 그리드 아래의 컨트롤 만 사용하기를 원하므로 데이터 소스에 묶여 있어야한다고 생각하지 않습니다.이를 수행하는 가장 좋은 방법은 무엇입니까?

나는 단순히 다시 설정하려고했다 DataSource 그리드를 위해 (즉 dataGridView.DataSource = db.<TableName>, 그것은 작동하지만, 그리드 상단으로 다시 스크롤되기 때문에 서투른 것입니다. 더 나은 방법이 존재한다고 확신합니다.

(PLS는 N00B 질문을 실례합니다. 저는이 모든 .NET에 매우 새로 생겼습니다 : P)

도움이 되었습니까?

해결책

가장 먼저 시도하는 것은입니다 getNewBindingList (), 그러나이 스레드 : "LINQ-SQL CANONICAL EDIBLE DATAGRIDVIEW 샘플 코드"다른 시나리오에 대한 생각이 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top