我有一个父母实体“persona”(人)和两个子实体“voluntario”(志愿者)和“colaborador”(colaborator)。
我尝试使用此代码将colaborator添加到现有的“persona”(因为是现有的“voluntario”),但是实体框架在父表的表上创建了一条新记录,而在子表的表中创建了一条新的父记录,而不是现有的之一:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Current array:
<span id="displayArray"></span>
<hr> Add to array:
<div class="newColor">blue</div>
<div class="newColor">red</div>
<div class="newColor">green</div>
<div class="newColor">orange</div>
<div class="newColor">purple</div>
<div class="newColor">yellow</div>
<div class="newColor">brown</div>
<div class="newColor">pink</div>
这是“Colaboradores”表中的结果:
提前感谢您的帮助。最好的问候,
华金
答案 0 :(得分:0)
更改db.colaboradores.Add(colaborador)
到db.Entry(colaborador).State = EntityState.Added
让其他国家独自一人。 EF非常聪明,能够理解关系并为您处理。
答案 1 :(得分:0)
我有3个构造函数:
flags.DEFINE_string('output_path', 'E:\\ml\\output\\filename.record', '')
编辑:尝试复制人物角色:
/// <summary>
/// Constructor por defecto
/// </summary>
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
public colaboradores() : base()
{
this.donaciones = new HashSet<donaciones>();
}
/// <summary>
/// Constructor por parámetros de Colaboradores. Hereda de Persona
/// </summary>
/// <param name="ident">ID Autoincremental de la persona</param>
/// <param name="name">Nombre de la persona</param>
/// <param name="lastName">Apellidos de una persona</param>
/// <param name="postalAddress">Dirección postal de la persona</param>
/// <param name="postalCode">Codigo postal de la dirección postal de la persona</param>
/// <param name="city">Localidad de la persona</param>
/// <param name="state">Provincia correspondiente a la localidad de una persona</param>
/// <param name="country">Pais de la dirección postal de la persona</param>
/// <param name="phone1">Teléfono de contacto de la persona</param>
/// <param name="phone2">Teléfono de contacto secundario de la persona. Valor opcional y no requerido en los formularios.</param>
/// <param name="emailAddress">Dirección de correo electrónico de la persona.</param>
/// <param name="birthDate">Fecha de Nacimiento de la persona. Valor opcional no requerido en los formularios.</param>
/// <param name="CIF_NIF">Número de identificación fiscal de la persona o empresa que es colaborador.</param>
/// <param name="cuentaBancaria">Cuenta bancaria a dónde se realizarán los cargos de las donaciones.</param>
public colaboradores(int ident, string name, string lastName, string postalAddress, string postalCode, string city, string state, string country, string phone1, string phone2,
string emailAddress, DateTime birthDate, string CIF_NIF, string cuentaBancaria) : base
(ident, name, lastName, postalAddress, postalCode, city, state, country, phone1, phone2, emailAddress, birthDate)
{
this.CIF_NIF = CIF_NIF;
this.CuentaBancaria = cuentaBancaria;
}
/// <summary>
/// Constructor con parámetros para crear el colaborador cuando existe la donación.
/// </summary>
/// <param name="persona">Objeto de la clase persona.</param>
/// <param name="CIF_NIF">CIF o NIF de la persona que realiza la donación (se convierte en colaborador).</param>
/// <param name="cuentaBancaria">Cuenta bancaria a la que se emitirán las remesas bancarias</param>
public colaboradores(personas persona, string CIF_NIF, string cuentaBancaria) : base(persona)
{
this.CIF_NIF = CIF_NIF;
this.Cuent`enter code here`aBancaria = cuentaBancaria;
}
它不会在子实体“colaboradores”中创建记录。
由于