EF - 找不到模型

时间:2014-10-07 14:12:17

标签: c# entity-framework ef-database-first database-first

我有2个类似的DB。因此,两个DB都有表AllowedDates和AllowedTimes(具有相同的结构)。我尝试在我的项目中连接到这两个DB。我为第一个DB创建了第一个模型(DB.edmx),为第二个DB创建了第二个模型(TEX.edmx)。此外,我为TEX.edmx重命名为AllowedDateTex和AllowedTimeTex EntityTypes以防止类的名称冲突。结果,我在任何情况下都有错误:

        List<AllowedDateTex> allowedDatesTex = (from i in _dbContextTex.AllowedDateTexes select i).ToList();
  

其他信息:无法找到概念模型类型   &#39; ITW2012Mobile.Models.AllowedDate&#39;

为什么它会尝试使用&#39; ITW2012Mobile.Models.AllowedDate&#39;以及如何解决它?

我使用最新版本的EF。

[ADDED]

我的连接字符串:

<add name="DefaultConnection" connectionString="data source=(local);initial catalog=JSAVIP;Integrated Security=True" providerName="System.Data.SqlClient" />
<add name="ITW2012Entities" connectionString="metadata=res://*/Models.DB.csdl|res://*/Models.DB.ssdl|res://*/Models.DB.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=(local);initial catalog=JSAVIP;Integrated Security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
<add name="TexEntities" connectionString="metadata=res://*/Models.TEX.csdl|res://*/Models.TEX.ssdl|res://*/Models.TEX.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=(local);initial catalog=fsmf2012;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

拨打第二个模型:

    TexEntities _dbContextTex;
    _dbContextTex = new TexEntities();
    var a = (from i in _dbContextTex.AllowedDateTexes select i).ToList();

(在第三个字符串中我收到错误&#34;其他信息:无法找到&#39; ITW2012Mobile.Models.AllowedDate&#39;的概念模型类型。&#39;。

定义了AllowedDateTex等:

namespace ITW2012Mobile.Models
{
    using System;
    using System.Data.Entity;
    using System.Data.Entity.Infrastructure;

    public partial class TexEntities : DbContext
    {
        public TexEntities()
            : base("name=TexEntities")
        {
        }

        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            throw new UnintentionalCodeFirstException();
        }

        public DbSet<AllowedDateTex> AllowedDateTexes { get; set; }
        public DbSet<AllowedTimeTex> AllowedTimeTexes { get; set; }
    }
}

namespace ITW2012Mobile.Models
{
    using System;
    using System.Collections.Generic;

    public partial class AllowedDateTex
    {
        public AllowedDateTex()
        {
            this.AllowedTimes = new HashSet<AllowedTimeTex>();
        }

        public int DayID { get; set; }
        public System.DateTime Day { get; set; }

        public virtual ICollection<AllowedTimeTex> AllowedTimes { get; set; }
    }
}

namespace ITW2012Mobile.Models
{
    using System;
    using System.Collections.Generic;

    public partial class AllowedTimeTex
    {
        public int TimeID { get; set; }
        public int DayID { get; set; }
        public int Hour { get; set; }
        public int Minute { get; set; }

        public virtual AllowedDateTex AllowedDate { get; set; }
    }
}

编辑2:

我决定删除EF模型并重新创建它。当我添加第一个EF模型时 - 一切都好。当我再添加一个具有相同名称的表时,就像在第一个EF模型中一样,然后重新创建第一个模型中的类!

由于

0 个答案:

没有答案