我正在使用C#編寫Visual Studio 2015的最終項目。 我正在做一個應用程序,作爲Android遊戲的模擬器,我有一些字符(models.Personaje)。那些角色有能力(BB),當我想要執行遷移時,它會投擲:MVC指定的C#架構無效
指定的模式無效。錯誤:關係 'Projecte_Final.Models.Personaje_BB'未加載,因爲 'Projecte_Final.Models.BB'不可用。
我不知道我做錯了什麼,這裏是模型BB和Personaje。
BB型號
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace Projecte_Final.Models
{
public class BB
{
public int ID { get; set; }
//Habilidades de los personajes
public String Nombre { get; set; }
public String BBDesc { get; set; }
//Rama del BB (Heal, Support o Atk)
public int RamaBBID { get; set; }
public virtual RamaBB RamaBB { get; set; }
//Tipo del BB (BB, SBB, UBB)
public int TipoBBID { get; set; }
public virtual TipoBB TipoBB { get; set; }
//Grupalidad del BB
public int GrupalBBID { get; set; }
public virtual GrupalBB GrupalBB { get; set; }
public int NhitsBB { get; set; }
public int DCBB { get; set; }
public int CosteBB { get; set; }
public int MultiplicadorBB { get; set; }
public int EfectoBBID { get; set; }
public virtual Efectos EfectoBB { get; set; }
public virtual ICollection<Personaje> Personajes { get; set; }
}
}
Personaje型號
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Web;
namespace Projecte_Final.Models
{
public class Personaje
{
//Personaje del juego.
//Datos generales
public int Numero { get; set; }
public String Nombre { get; set; }
public int NivelMax { get; set; }
public int Estrellas { get; set; }
public int Coste { get; set; }
public virtual ICollection<Stats> Stats { get; set; }
//Elemento
public int ElementoID { get; set; }
public virtual Elemento Elemento { get; set; }
//Genero
public int GeneroID { get; set; }
public virtual Genero Genero { get; set; }
//Datos combate
public int NHits { get; set; }
public int DC { get; set; }
//BB
public int? BBID { get; set; }
public virtual BB BB { get; set; }
//SBB
public int? SBBID { get; set; }
public virtual BB SBB { get; set; }
//UBB
public int? UBBID { get; set; }
public virtual BB UBB { get; set; }
//Datos IMPS
public int ImpHP { get; set; }
public int ImpAtk { get; set; }
public int ImpDef { get; set; }
public int ImpRec { get; set; }
//Descripciones extras
public int? LSID { get; set; }
public virtual LS LS { get; set; }
public int? ESID { get; set; }
public virtual ES ES { get; set; }
//Pre i post evoluciones
public int? PreEvoNum { get; set; }
public virtual Personaje PreEvo { get; set; }
public int? PostEvoNum { get; set; }
public virtual Personaje PostEvo { get; set; }
//Imágenes
[NotMapped]
public HttpPostedFileBase Imagen { get; set; }
[NotMapped]
public HttpPostedFileBase Icono { get; set; }
[NotMapped]
public HttpPostedFileBase Gif { get; set; }
[NotMapped]
public HttpPostedFileBase GifAtaque { get; set; }
//Propiedad de navegacion propia
public virtual ICollection<Personaje> Personajes { get; set; }
//Propiedad de navegacion a Unidad
public virtual ICollection<Unidad> Unidades { get; set; }
}
}
這裏,它是爲模型BB和Personaje分貝範圍內的代碼:
//BB
modelBuilder.Entity<BB>().HasKey(x => x.ID);
modelBuilder.Entity<BB>().HasRequired(x => x.RamaBB).WithMany(x => x.BBRama).HasForeignKey(x => x.RamaBBID);
modelBuilder.Entity<BB>().HasRequired(x => x.TipoBB).WithMany(x => x.BBTipo).HasForeignKey(x =>x.TipoBBID);
modelBuilder.Entity<BB>().HasRequired(x => x.GrupalBB).WithMany(x => x.BBGrupal).HasForeignKey(x => x.GrupalBBID);
modelBuilder.Entity<BB>().HasRequired(x => x.EfectoBB).WithMany(x => x.BBEfectos).HasForeignKey(x => x.EfectoBBID);
//Personaje
modelBuilder.Entity<Personaje>().HasKey(x => x.Numero);
modelBuilder.Entity<Personaje>().HasRequired(x => x.Elemento).WithMany(x => x.Personajes).HasForeignKey(x => x.ElementoID);
modelBuilder.Entity<Personaje>().HasRequired(x => x.Genero).WithMany(x => x.Personajes).HasForeignKey(x => x.GeneroID);
modelBuilder.Entity<Personaje>().HasOptional(x => x.BB).WithMany(x => x.Personajes).HasForeignKey(x => x.BBID);
modelBuilder.Entity<Personaje>().HasOptional(x => x.SBB).WithMany(x => x.Personajes).HasForeignKey(x => x.SBBID);
modelBuilder.Entity<Personaje>().HasOptional(x => x.UBB).WithMany(x => x.Personajes).HasForeignKey(x => x.UBBID);
modelBuilder.Entity<Personaje>().HasOptional(x => x.ES).WithMany(x => x.Personajes).HasForeignKey(x => x.ESID);
modelBuilder.Entity<Personaje>().HasOptional(x => x.LS).WithMany(x => x.Personajes).HasForeignKey(x => x.LSID);
modelBuilder.Entity<Personaje>().HasOptional(x => x.PreEvo).WithMany(x => x.Personajes).HasForeignKey(x => x.PreEvoNum);
modelBuilder.Entity<Personaje>().HasOptional(x => x.PostEvo).WithMany(x => x.Personajes).HasForeignKey(x => x.PostEvoNum);
我希望你能幫上忙我,謝謝。