USE [TECHNET]
GO
SET
ANSI_NULLS
ON
QUOTED_IDENTIFIER
CREATE
TABLE
[dbo].[Articoli](
[IdArticolo] [
int
] IDENTITY(1,1)
NOT
NULL
,
[CodArt] [nvarchar](25)
[DesArt] [nvarchar](50)
[CodFamiglia] [nvarchar](6)
CONSTRAINT
[PK_Articoli]
PRIMARY
KEY
CLUSTERED
(
[IdArticolo]
ASC
)
WITH
(PAD_INDEX =
OFF
, STATISTICS_NORECOMPUTE =
, IGNORE_DUP_KEY =
, ALLOW_ROW_LOCKS =
, ALLOW_PAGE_LOCKS =
[
]
ALTER
[dbo].[Articoli]
ADD
[DF_Articoli_CodArt]
DEFAULT
''
FOR
[CodArt]
[DF_Articoli_DesArt]
[DesArt]
[DF_Articoli_CodFamiglia]
[CodFamiglia]
[dbo].[Famiglie](
[DesFamiglia] [nvarchar](50)
[PK_Famiglie]
INSERT
INTO
Articoli(CodArt, DesArt, CodFamiglia)
VALUES
'ART001'
'ARTICOLO TEST'
'FAM01'
'ART002'
'PRODOTTO PROVA'
'ART003'
'ART. 003'
'FAM02'
'ART004'
'ART. 004'
'ART005'
'ART. 005'
'ART006'
'ART. 006'
'ART007'
'ART. 007'
'FAM03'
'ART008'
'ART. 008'
'FAM04'
Famiglie(CodFamiglia, DesFamiglia)
'PROD. MECCANICI'
'PROD. ELETTRONICI'
'RICAMBI'
'IMPORT'
using
(TECHNETEntities db =
new
TECHNETEntities())
{
Articoli art = db.Articoli.Where((x) => x.CodArt ==
"ART001"
).FirstOrDefault();
MessageBox.Show(art.DesArt);
}
var art = db.Articoli
.Join(db.Famiglie,
articolo => articolo.CodFamiglia,
famiglia => famiglia.CodFamiglia,
(articolo, famiglia) =>
{ Articoli = articolo, Famiglie = famiglia})
.Where((x) => x.Articoli.CodArt ==
"ART005"
.FirstOrDefault();
MessageBox.Show(art.Articoli.DesArt +
" - "
+ art.Famiglie.DesFamiglia);
MessageBox.Show(art.DesArt +
namespace
ArticoloEF.Model
System;
System.Data.Entity;
System.ComponentModel.DataAnnotations.Schema;
System.Linq;
public
partial
class
TechnetModelloCF : DbContext
TechnetModelloCF()
:
base
"name=TechnetModelloCF"
virtual
DbSet<Articoli> Articoli {
get
;
set
; }
DbSet<Famiglie> Famiglie {
protected
override
void
OnModelCreating(DbModelBuilder modelBuilder)
modelBuilder.Entity<Famiglie>()
.HasMany(e => e.Articoli)
.WithRequired(e => e.Famiglie)
.WillCascadeOnDelete(
false
);
System.Collections.Generic;
System.ComponentModel.DataAnnotations;
System.Data.Entity.Spatial;
[Table(
"Articoli"
)]
Articoli
[Key]
IdArticolo {
[Required]
[StringLength(25)]
string
CodArt {
[StringLength(50)]
DesArt {
[StringLength(6)]
CodFamiglia {
Famiglie Famiglie {
"Famiglie"
Famiglie
[System.Diagnostics.CodeAnalysis.SuppressMessage(
"Microsoft.Usage"
"CA2214:DoNotCallOverridableMethodsInConstructors"
Famiglie()
Articoli =
HashSet<Articoli>();
DesFamiglia {
"CA2227:CollectionPropertiesShouldBeReadOnly"
ICollection<Articoli> Articoli {
Enable-Migrations
Add-Migration <
NOME_MIGRAZIONE
>
Add-Migration InitialCreate –IgnoreChanges
Update-Database
At the following link, you can download the Code-First project used in the example: https://code.msdn.microsoft.com/Introduction-to-Entity-09676091