Каскадирование с CustomObjects - PullRequest
0 голосов
/ 20 апреля 2019

У меня есть два объекта:

public class BaseModule
{
    public long BaseModuleID { get; set; }

    public string ModuleName { get; set; }

    public bool CanOpen { get; set; }

    public bool CanConfigure { get; set; }
}

public class ActiveModule
{
    public long ActiveModuleID { get; set; }

    public long BaseModuleID { get; set; }

    public BaseModule Module { get; set; }
}

BaseModule находится в отношении 1: 1 к объекту ActiveModule, а ActiveModule является оберткой для BaseModule.

Теперь я хочу сохранить ActiveModule, но в нем говорится, что в столбце BaseModuleID нет значения по умолчанию. Но в моем объекте дочерний BaseModule.

Я бы знал, что значение дочернего элемента будет выбрано для вставки в столбец.

Я что-то здесь упускаю или просто не понимаю, как происходит каскадирование в Dapper?

1 Ответ

0 голосов
/ 21 апреля 2019

Вам нужен атрибут внешнего ключа, я думаю:


        public class ActiveModule
        {
            public long ActiveModuleID { get; set; }

            [ForeignKey("Module")]
            public long BaseModuleID { get; set; }

            public BaseModule Module { get; set; }
        }

        public class BaseModule
        {
            public long BaseModuleID { get; set; }

            public bool CanConfigure { get; set; }
            public bool CanOpen { get; set; }
            public string ModuleName { get; set; }
        }
...