저는 EDM을 처음 접했으므로 저와 함께하십시오. 내가 만든 EDM에서 바인드 된 DataGridView가있는 Windows 폼이 있습니다. 내 변경 사항을 잘 업데이트하는 방법을 알았지 만 사용자가 문제가있는 새 행을 만드는 경우입니다.엔티티 데이터 모델 및 DataGridView - 새 개체 만들기
나는 수많은 방법과 많은 Google 검색을 시도했지만 지금까지 아무 것도 떠오르지 않았습니다. 여기
데이터가로드되는 방법은 다음과 같습니다
Dim boilerID As Integer = DirectCast(ddlBoiler.SelectedValue, Integer)
Dim countryID As Integer = DirectCast(ddlCountry.SelectedValue, Integer)
Dim ratings = From r In _Context.Rating _
Where r.Boiler.Boiler_ID = boilerID _
And r.Country.Country_ID = countryID _
Order By r.Sequence _
Select r
RatingBindingSource.DataSource = ratings.ToList()
또한, 나는 지금 정보를 저장하고있어 모두가 다음과 같다 :
이Private Sub btnSave_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSave.Click
_Context.SaveChanges()
End Sub
나는 사용자가 할 수 있도록하려면 그리드의 "새로운 행"기능을 사용하여 버튼을 클릭하고 새 대화 상자를 여는 대신 데이터베이스에 새 항목을 추가하십시오. 이것이 어떻게 성취 될 것인가?
나는 누군가가 볼 필요가있는 경우에 나가 새로운 품목을 추가하는 것을 시도한 몇몇을 포함 할 수있다.
감사합니다.
업데이트 :
For Each dgvr As DataGridViewRow In dgvRatings.Rows
If dgvr.DataBoundItem IsNot Nothing AndAlso CType(dgvr.DataBoundItem, Rating).Rating_ID <= 0 Then
Dim r As Rating = dgvr.DataBoundItem
r.Boiler = ddlBoiler.SelectedItem
r.Country = ddlCountry.SelectedItem
_Context.AddObject("Rating", r)
End If
Next
오류 (_Context.SaveChanges를 호출 할 때 발생합니다()) : 스토어 업데이트, 삽입 또는 삭제 문 여기에 내가 새로운 객체 오류를 추가하기위한 시도 방법 I 수신 중 하나 예상치 못한 행 수 (0)에 영향을줍니다. 엔터티가로드 된 이후에 엔터티가 수정되거나 삭제되었을 수 있습니다. ObjectStateManager 항목을 새로 고칩니다. 당신은 더 완전한 해답을 제공 할 수있는 충분한 정보를 제공하지 않았다 .SaveChanges()
를 호출하지만, 새로운 엔티티를 생성 할 때
응답 해 주셔서 감사합니다. 나는 비슷한 것을 시도했다. 내가 받고있는 오류에 대한 내 업데이 트를 참조하십시오. – VinPepe