SQL сохраняет существующие данные в миграции при преобразовании нескольких свойств в список - PullRequest
0 голосов
/ 17 ноября 2018

В модели фреймворка первого объекта кода у меня есть класс, который содержит несколько значений int, относящихся к разным типам платежей (здесь имена упрощены), которые необходимо изменить на list<Payment>:

public class Employee : BaseEntity
{
    // basic properties ingerited

    //existing properties:
    public int Pay1 { get; set; }
    public int Pay2 { get; set; }
    public int Pay3 { get; set; }
    public int Pay4 { get; set; }
    public int Pay5 { get; set; }
    ....

    //should change to:
    public List<Payment> Payments {get; set;}
}

Где Платежная организация:

public class Payment : BaseEntity
{
    // ID and other basic properties are inherited
    public PaymentType PaymentType {get; set;} // PaymentType : enum
    public int Amount {get; set;}
    // ...

    public int EmployeeID { get; set; }
    public virtual Employee Employee { get; set; }
}

Как сохранить существующие данные в этом обновлении миграции?Должно ли это быть так?

Sql("Insert Into dbo.Payments (PaymentType, Amount, EmployeeID)  
    Values (1, Pay1, Id) 
    Select Pay1, Id FROM dbo.Employee");
...