Salut,
Je suis complètement novice concernant LINQ et je reprends le travail de quelqu'un d'autre. Je suis donc la logique de son projet, du moins j'essaie.
Situons le problème, j'ai une table contenant deux colonnes. Ces deux colonnes sont la clé primaire de la table.
J'essaie de supprimer une ligne de cette table, en utilisant ceci :
L'appel de la méthode en VBLa méthode elle-même
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 Protected Sub cbAlerte_CheckedChanged(ByVal sender As Object, ByVal e As EventArgs) Dim cb As CheckBox = CType(sender, CheckBox) Dim row As GridViewRow = CType(cb.Parent.Parent, GridViewRow) If row IsNot Nothing Then Dim Index As Integer = row.DataItemIndex Dim Id As Integer = GridViewMesRecherches.DataKeys(Index).Value Dim mts As New MyLib.Services.AlertesService() Dim mt As New MyLib.Repositories.MY_TABLE() If cb.ID = "cb1" Then mt.COL2 = 1 ElseIf cb.ID = "cb2" Then mt.COL2 = 2 End If al.COL1 = Id If cb.Checked Then mts.insertMyTableByCol1AndCol2(mt) Else mts.deleteMyTableByCol1AndCol2(mt)) End If End If End SubEt la définition de la table dans le dbml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 public void deleteMyTableByCol1AndCol2(MyTable mt) { _db.MyTables.DeleteOnSubmit(mt); _db.SubmitChanges(); }J'obtiens une erreur en retour qui est comme le titre du message l'indique :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <Table Name="dbo.MY_TABLE" Member="MY_TABLEs"> <Type Name="MY_TABLE"> <Column Name="COL1" Type="System.Int32" DbType="Int NOT NULL" IsPrimaryKey="true" CanBeNull="false" /> <Column Name="COL2" Type="System.Int32" DbType="Int NOT NULL" IsPrimaryKey="true" CanBeNull="false" /> </Type> </Table>Je ne trouve que difficilement des informations sur le sujet, pouvez-vous m'éclairer?Impossible de supprimer une entité qui n'a pas été attachée.
Merci par avance.
Partager