62 messaggi dal 22 ottobre 2012
Ho una soluzione costituita da 2 progetti. Un progetto UI ( Application Windows Form e un progretto Class Library DATA.

Nome.Data
Nome.UI

Nel progetto "Data" volevo gestire tramite EF6 Code First l'accesso ai dati, nel progetto UI l'interfaccia Windows Form.

Non ho nessun problema nel progetto Data, ma quando cerco di instanziare dal progetto UI il mio DbContext ( dopo avere aggiunto il riferimento alla class library) mi viene segnalato un errore del riferimento mancante "System.Data.Entity.DbContext" !!. Ma nel progetto UI non devo aggiungere il riferimento


Progetto "Imballo.Data"


DBImballoContext.cs

using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using SGVImballo.Data.Models.Mapping;

namespace SGVImballo.Data.Models
{
    public partial class DBImballoContext : DbContext
    {
        static DBImballoContext()
        {
            Database.SetInitializer<DBImballoContext>(null);
        }

        public DBImballoContext()
            : base("Name=DBImballoContext")
        {
        }

        public DbSet<Datalog> Datalogs { get; set; }

        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            modelBuilder.Configurations.Add(new DatalogMap());
        }
    }
}

Datalog.cs

using System;
using System.Collections.Generic;

namespace SGVImballo.Data.Models
{
    public partial class Datalog
    {
        public int ID_Datalog { get; set; }
        public System.DateTime data_inizio { get; set; }
        public string codice_operatore { get; set; }
        public string codice_impianto { get; set; }
        public string dataMatrix { get; set; }
        public string udc { get; set; }
        public string note { get; set; }
    }
}

DatalogMap.cs

using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.ModelConfiguration;

namespace SGVImballo.Data.Models.Mapping
{
    public class DatalogMap : EntityTypeConfiguration<Datalog>
    {
        public DatalogMap()
        {
            // Primary Key
            this.HasKey(t => t.ID_Datalog);

            // Properties
            this.Property(t => t.codice_operatore)
                .IsRequired()
                .HasMaxLength(20);

            this.Property(t => t.codice_impianto)
                .IsRequired()
                .HasMaxLength(20);

            this.Property(t => t.dataMatrix)
                .IsRequired()
                .HasMaxLength(25);

            this.Property(t => t.udc)
                .HasMaxLength(20);

            this.Property(t => t.note)
                .HasMaxLength(50);

            // Table & Column Mappings
            this.ToTable("Datalog");
            this.Property(t => t.ID_Datalog).HasColumnName("ID_Datalog");
            this.Property(t => t.data_inizio).HasColumnName("data_inizio");
            this.Property(t => t.codice_operatore).HasColumnName("codice_operatore");
            this.Property(t => t.codice_impianto).HasColumnName("codice_impianto");
            this.Property(t => t.dataMatrix).HasColumnName("dataMatrix");
            this.Property(t => t.udc).HasColumnName("udc");
            this.Property(t => t.note).HasColumnName("note");
        }
    }
}



Progetto Imballo.UI


Form1.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using SGVImballo.Data.Models;

namespace SGVImballo.UI
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private DBImballoContext _context;

        private void button1_Click(object sender, EventArgs e)
        {

        }
    }
}



Errore1Il tipo 'System.Data.Entity.DbContext' è definito in un assembly di cui manca il riferimento. Aggiungere un riferimento all'assembly 'EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.C:\Visual Studio 2013\Projects\SGVImballo\SGVImballo.UI\Form1.cs2134SGVImballo.UI

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.