Bonjour,

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
LinQToDBDataContext dataContext = new LinQToDBDataContext();
Kod kodLinQ;
kodLinQ = (from k in dataContext.Kods 
  where k.nazwa == "k10" && k.ZP.nazwa == "s" select k).Single();
kodLinQ.opis = "zarma";
kodLinQ = new Kod();
kodLinQ.id = 111;
kodLinQ.id_ZP = 2;
kodLinQ.nazwa = "asdf";
kodLinQ.opis = "zxcv";
dataContext.Kods.InsertOnSubmit(kodLinQ);
try
{
  dataContext.SubmitChanges(System.Data.Linq.ConflictMode.FailOnFirstConflict);
}
catch (Exception e)
{
  Console.WriteLine(e);
}
J'ai essayé de tester ma connexion Linq grâce à ce code, tiré d'exemples msdn, avec un insert et un update, mais rien ne se passe dans la base de données (SQL Server Express 2005).
J'arrive à modifier la BDD depuis l'explorateur de bdd dans Visual Studio Express 2008.
Les classes Linq ont été générées automatiquement en ajoutant les tables avec l'outil graphique (glissé/déposé).
L'objet Linq est bien récupéré par le select et la propriété est bien modifiée dans les objets Linq.
J'ai ajouté un try/catch pour vérifier qu'il n'y a pas d'exception, et j'ai ajouté le paramètre FailOnFirstConflict au SubmitChanges pour être sûr.
Aucune exception renvoyée, le code termine, mais la bdd ne change pas

Merci d'avance.

Rag

[EDIT] J'ai essayé sur une machine neutre (privée) et ça marche... donc ça doit être un problème de surprotection, Visual Studio ne doit pas avoir accès à la base
Si quelqu'un à une idée pour contourner ça...

[EDIT2] Problème résolu, quand j'ai attaché la BDD au projet VS m'a proposé de joindre les fichiers au projet (pour je ne sais quelle raison, comme d'hab j'ai lu en diagonale...) et du coup, au debug du programme, il fait une build dans le dossier bin, et y ajoute une copie des fichiers de la BDD... et ce sont ceux là qui sont modifiés au moment du débug... et donc l'original qui est visible dans VS ne change pas...
Pour voir les changements il faut ajouter cette copie de la BDD à l'explorateur de BDD dans VS.
S'il vous plaît ne bloquez pas mon compte c'est pas ma faute si je suis un
Je m'en vais m'auto

Merci pour votre patience...