Bonjour,
J'ai créé un projet c# avec une classe d'objet représentant les tables de ma BDD (code first avec EF5). Aujourd'hui, j'aimerais générer un backup de ma BDD depuis mon application c#. Soit créer un script SQL, ou une meilleur idée si vous en avez.
Pourriez-vous m'indiquer des exemples de code pour parvenir à mes fins svp ? C'est très urgent :/.
Merci !
voici des extrait de code de mes classe :
mon db context :
une classe (table) :
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108 namespace App_Clinique.ClassLibrary.DbContext { using App_Clinique.ClassLibrary.Entities; using System; using System.Collections.Generic; using System.Data.Entity; using System.Data.Entity.ModelConfiguration.Conventions; using System.Linq; using System.Text; using System.Threading.Tasks; public class App_cliniqueContext : DbContext { public DbSet<Actualite> Actualite { get; set; } public DbSet<Consultation> Consultation { get; set; } public DbSet<Document> Document { get; set; } public DbSet<Medicament> Medicament { get; set; } public DbSet<OrdonnancesMedicaments> OrdonnancesMedicaments { get; set; } public DbSet<Patient> Patient { get; set; } public App_cliniqueContext() : base("App_cliniqueContext") { } protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Entity<Actualite>().ToTable("Actualite", "dbo"); modelBuilder.Entity<Consultation>().ToTable("Consultation", "dbo"); modelBuilder.Entity<Document>().ToTable("Document", "dbo"); modelBuilder.Entity<Medicament>().ToTable("Medicament", "dbo"); modelBuilder.Entity<OrdonnancesMedicaments>().ToTable("OrdonnancesMedicaments", "dbo"); modelBuilder.Entity<Patient>().ToTable("Patient", "dbo"); /**************************************************************************************************** * ***************************************************************************************************/ modelBuilder.Entity<Consultation>() .HasRequired(Consultation => Consultation.Patient) .WithMany(Patient => Patient.Consultations) .HasForeignKey(Consultation => Consultation.PatientID) .WillCascadeOnDelete(true); modelBuilder.Entity<Consultation>() .HasOptional(Consultation => Consultation.Ordonnance) .WithMany() .HasForeignKey(Consultation => Consultation.OrdonnanceID) .WillCascadeOnDelete(false); modelBuilder.Entity<Document>() .HasRequired(Document => Document.Patient) .WithMany() .HasForeignKey(Document => Document.PatientID) .WillCascadeOnDelete(false); modelBuilder.Entity<ArretMaladie>() .HasOptional(ArretMaladie => ArretMaladie.DossierMedical) .WithMany(DossierMedical => DossierMedical.ArretsMaladie) .HasForeignKey(ArretMaladie => ArretMaladie.DossierMedicalID) .WillCascadeOnDelete(false); modelBuilder.Entity<Ordonnance>() .HasOptional(Ordonnance => Ordonnance.DossierMedical) .WithMany(DossierMedical => DossierMedical.Ordonnances) .HasForeignKey(Ordonnance => Ordonnance.DossierMedicalID) .WillCascadeOnDelete(false); modelBuilder.Entity<OperationChirurgicale>() .HasOptional(OperationChirurgicale => OperationChirurgicale.DossierMedical) .WithMany(DossierMedical => DossierMedical.OperationChirurgicales) .HasForeignKey(OperationChirurgicale => OperationChirurgicale.DossierMedicalID) .WillCascadeOnDelete(false); modelBuilder.Entity<Ordonnance>() .HasRequired(Ordonnance => Ordonnance.Consultation) .WithMany() .HasForeignKey(Ordonnance => Ordonnance.ConsultationID) .WillCascadeOnDelete(false); modelBuilder.Entity<OrdonnancesMedicaments>() .HasRequired(OrdonnancesMedicaments => OrdonnancesMedicaments.Ordonnance) .WithMany(Ordonnance => Ordonnance.OrdonnancesMedicaments) .HasForeignKey(OrdonnancesMedicaments => OrdonnancesMedicaments.OrdonnanceID) .WillCascadeOnDelete(true); modelBuilder.Entity<OrdonnancesMedicaments>() .HasRequired(OrdonnancesMedicaments => OrdonnancesMedicaments.Medicament) .WithMany(Medicament => Medicament.OrdonnancesMedicaments) .HasForeignKey(OrdonnancesMedicaments => OrdonnancesMedicaments.MedicamentID) .WillCascadeOnDelete(true); modelBuilder.Entity<Patient>() .HasOptional(Patient => Patient.Document) .WithMany() .HasForeignKey(Patient => Patient.DocumentID) .WillCascadeOnDelete(false); } } public class App_cliniqueInitializer : DropCreateDatabaseIfModelChanges<App_cliniqueContext> { protected override void Seed(App_cliniqueContext context) { } } }
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Linq; using System.Text; using System.Threading.Tasks; namespace App_Clinique.ClassLibrary.Entities { [Serializable] public partial class Medicament { public Medicament() { } [Column("MedicamentID", Order = 0), DatabaseGenerated(DatabaseGeneratedOption.None), Key] public virtual Int64 MedicamentID { get; set; } [Column("Code"), Required] public virtual String Code { get; set; } [Column("Nom"), Required] public virtual String Nom { get; set; } [Column("Designation"), Required] public virtual String Designation { get; set; } [Column("CodeBarre"), Required] public virtual String CodeBarre { get; set; } [Column("Laboratoire"), Required] public virtual String Laboratoire { get; set; } [Column("Categorie"), Required] public virtual String Categorie { get; set; } /**************************************************************************************************** * Foreign Keys - IDs ***************************************************************************************************/ /**************************************************************************************************** * Foreign Keys - Reference Objects ***************************************************************************************************/ /**************************************************************************************************** * Collections ***************************************************************************************************/ public virtual ICollection<OrdonnancesMedicaments> OrdonnancesMedicaments { get; set; } } }
Partager