c# - sig - tipos de bases de datos arcgis
asignar mĂșltiples tablas a una clase de entidad Ășnica en el marco de la entidad (1)
Antes de que esto se marque como duplicado, he revisado las otras publicaciones relacionadas y no responden a mi pregunta.
Estoy trabajando en una base de datos heredada que tiene 2 tablas que tienen una relación 1: 1. Actualmente, tengo un tipo (1Test: 1Result) para cada una de estas tablas definidas. Me gustaría fusionar estas tablas particulares en una sola clase.
Los tipos actuales se ven así
public class Result
{
public string Id { get; set; }
public string Name { get; set; }
public string Text { get; set; }
public string Units { get; set; }
public bool OutOfRange { get; set; }
public string Status { get; set; }
public string Minimum { get; set; }
public string Maximum { get; set; }
public virtual Instrument InstrumentUsed { get; set; }
public virtual Test ForTest { get; set; }
}
public class Test
{
public int Id { get; set; }
public string Status { get; set; }
public string Analysis { get; set; }
public string ComponentList { get; set; }
public virtual Sample ForSample { get; set; }
public virtual Result TestResult { get; set; }
}
Yo preferiría que se vieran así
public class TestResult
{
public int Id { get; set; }
public string Status { get; set; }
public string Analysis { get; set; }
public string ComponentList { get; set; }
public string TestName { get; set; }
public string Text { get; set; }
public string Units { get; set; }
public bool OutOfRange { get; set; }
public string Status { get; set; }
public string Minimum { get; set; }
public string Maximum { get; set; }
public virtual Instrument InstrumentUsed { get; set; }
}
Actualmente estoy usando la API fluida para mapearlos en nuestra base de datos heredada de Oracle.
¿Cuál sería el mejor método para combinarlos en una sola clase? Tenga en cuenta que esta es una base de datos heredada. Cambiar las tablas no es una opción y la creación de vistas no es una solución viable en este punto del proyecto.
Puede usar Partición de entidades para lograr esto si tiene la misma clave principal en ambas tablas.
modelBuilder.Entity<TestResult>()
.Map(m =>
{
m.Properties(t => new { t.Name, t.Text, t.Units /*other props*/ });
m.ToTable("Result");
})
.Map(m =>
{
m.Properties(t => new { t.Status, t.Analysis /*other props*/});
m.ToTable("Test");
});
Aquí hay un article útil