IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linq Discussion :

modifier dans la couche DAO


Sujet :

Linq

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Novembre 2008
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 41
    Par défaut modifier dans la couche DAO
    bonjour,
    Je suis entrain de travailler sur un website(asp.net et c#) , avec une base de donnée de sql server 2005!!
    j'ai travaillé avec architecture à 3 couches(UI, business et DAO) et avec linq to sql!!!
    en fait j'ai un problème avec les opérations CRUD(ajouter, modifier, supprimer)
    et surtout avec Modifier !!
    j'aimerai modifier tout les attributs d'un objet (par exemple un objet Client(nom, prénom,etc))
    je vois pas comment je pourrai les modifier sans avoir une condition sur un attribut quelconque(surtout que cette condition va être gérée dans la couche UI je pense)
    Merci pour votre aide

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    216
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2007
    Messages : 216
    Par défaut
    Bonjour,

    je ne sais pas si le code VB suivant peut t'aider. Mais c'est une fonction qui utilise LINQ to SQL pour modifier le nom d'un auteur dans une table qui comporte deux champs (un numéro identifiant et l'auteur).
    A+

    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
    23
    24
    25
    26
    27
    28
     
            ''' <summary>
            ''' Correction d'un auteur
            ''' </summary>
            ''' <param name="cAutOld">ancien nom d'auteur</param>
            ''' <param name="cAutNew">Nouveau nom d'auteur</param>
     
            Function UpdateAuteur(ByVal cAutOld As String, ByVal cAutNew As String) As Integer
                Try
                    Dim oQuerryResult = From oTblAuteurs In oScanDataContext.TblAuteurs _
                                        Where oTblAuteurs.Auteur = cAutOld _
                                        Select oTblAuteurs
                    For Each qAut In oQuerryResult
                        qAut.Auteur = cAutNew
                    Next
                    Try
                        oScanDataContext.SubmitChanges(ConflictMode.ContinueOnConflict)
                        Return 1
                    Catch ex As Exception
                        MsgBox(ex.Message, MsgBoxStyle.Critical, My.Settings.pAppEnteteBox)
                        Return 0
                    End Try
                Catch ex As Exception
                    MsgBox(ex.Message, MsgBoxStyle.Critical, My.Settings.pAppEnteteBox)
                    Return 0
                End Try
     
            End Function

  3. #3
    Membre confirmé

    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 80
    Par défaut
    Donc par exemple, je vais te faire un ajout/modif/suppression

    Tu as un datacontext nommé dtct.dbml ou tu as posé ta table "Client".
    Ensuite,
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    Public Class Form1
        Dim dtct As New dtctDataContext
     
        Sub AddNewClient()
            Dim oMyClient As New Client
            oMyClient.ClientFirstName = "Fabien"
            oMyClient.ClientName = "DUPONT"
            oMyClient.ClientAddress = "6 rue des champs 75000 PARIS"
            oMyClient.ClientCountryId = 1
            dtct.Client.InsertOnSubmit(oMyClient)
            dtct.SubmitChanges()
        End Sub
     
        Sub UpdateClient()
            Dim oMyClient As Client
            oMyClient = (From MesClients In dtct.Client _
                       Where MesClients.ClientId = 1 _
                       Select MesClients).SingleOrDefault
            oMyClient.ClientFirstName = "Fabien Herve"
            dtct.SubmitChanges()
        End Sub
     
        Sub DelClient()
            Dim oMyClient As Client
            oMyClient = (From MesClients In dtct.Client _
                       Where MesClients.ClientId = 1 _
                       Select MesClients).SingleOrDefault
            dtct.Client.DeleteOnSubmit(oMyClient)
            dtct.SubmitChanges()
        End Sub
    End Class

Discussions similaires

  1. Réponses: 6
    Dernier message: 17/03/2010, 17h44
  2. Exploitation de GregorianCalendar, Date dans une couche DAO
    Par wdionysos dans le forum Collection et Stream
    Réponses: 8
    Dernier message: 10/01/2006, 18h04
  3. Réponses: 1
    Dernier message: 06/12/2005, 20h40
  4. Réponses: 5
    Dernier message: 30/09/2005, 16h42
  5. Recuperer derniere valeur modifiée dans un trigger
    Par xabs dans le forum Développement
    Réponses: 2
    Dernier message: 06/08/2004, 16h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo