0
我想首先更新我的数据库代码,但我得到的运行Add-转移命令后,该错误模式中的每个类型名称必须是唯一的。代码首先
One or more validation errors were detected during model generation:
ServicioTest.ErrorDispositivo: Name: Each type name in a schema must be
unique. Type name 'ErrorDispositivo' is already defined.
我已经尝试了很多可能的解决方案:
- 干净重建
- 删除迁移文件夹和数据库表
- 更改连接字符串名称
- 删除bin文件夹,然后重建
但是不起作用。
我的数据是
public class ModeloDatos : DbContext
{
public ModeloDatos()
: base("name=ModeloDatos")
{
}
public virtual DbSet<Dispositivos> Dispositivos { get; set; }
public virtual DbSet<Solicitud> Solicitudes { get; set; }
public virtual DbSet<Aplicacion> Aplicaciones { get; set; }
public virtual DbSet<Log> Logs { get; set; }
public virtual DbSet<ErrorDispositivo> ErroresDispositivo { get; set; }
public virtual DbSet<FormatoTemplate> FormatosTemplate { get; set; }
}
[Table("Dispositivos")]
public class Dispositivos
{
[Key]
public string DispositivoID { get; set; }
//propiedad de navegacion
public virtual ICollection<Solicitud> Solicitudes { get; set; }
}
[Table("Solicitudes")]
public class Solicitud
{
//primary key
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int SolicitudID { get; set; }
public DateTime Fecha { get; set; }
public string Ip { get; set; }
public string DispositivoID { get; set; }
[ForeignKey("DispositivoID")]
public virtual Dispositivos Dispositivo { get; set; }
public Respuesta DatosRespuesta { get; set; }
}
[Table("Aplicaciones")]
public class Aplicacion
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public string Usuario { get; set; }
[DataType(DataType.Password)]
public string Clave { get; set; }
public Guid Codigo { get; set; }
public bool Habilitado { get; set; }
}
[Table("Logs")]
public class Log
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public string Descripcion { get; set; }
public string StackTrace { get; set; }
}
[ComplexType]
public class Respuesta
{
public string Codigo { get; set; }
[ForeignKey("Codigo")]
public virtual ErrorDispositivo TipoErrorDispositivo { get; set; }
public string Mensaje { get; set; }
public string FingerPrint1 { get; set; }
public string FingerPrint2 { get; set; }
}
[Table("ErrorDispositivos")]
public class ErrorDispositivo
{
[Key]
public string Codigo { get; set; }
public string Descripcion { get; set; }
}
[Table("FormatoTemplates")]
public class FormatoTemplate
{
[Key]
public int Codigo { get; set; }
public string Formato { get; set; }
}
我怎样才能解决这个问题?