Основные миграции данных и таблицы Entity Framework, созданные вне EF - PullRequest
0 голосов
/ 26 апреля 2020

Я создаю таблицу в своей базе данных, которая содержит основные данные, импортированные из внешнего источника.

Теперь мне нужно сопоставить это с классом и использовать его в качестве свойства навигации для других классов в моей модели.

Как?!

Единственный способ, который я нашел, - установить атрибут Table для класса, а затем в комментарии по миграции закомментировать команды создания / удаления таблицы - что выглядит довольно неудовлетворительно.

Наверняка должен быть правильный способ сопоставления POCO с существующей таблицей? Как?

Редактировать:

CRAETE TABLE Foo (Id int NOT NULL PRIMARY KEY)
[Table("Foo")
public class Foo 
{
    [Key]
    [DatabaseGenerated(DatabaseGeneratedOption.None)]
    int Id {get; set;}
}

Выполнение этой команды:

Add-Migration Foo

приводит к созданию этого класса миграции:

public partial class Foo: Migration
{
    protected override void Up(MigrationBuilder migrationBuilder)
    {
        migrationBuilder.CreateTable(
            name: "Foo",
            columns: table => new
            {
                Id = table.Column<int>(nullable: false)
            },
            constraints: table =>
            {
                table.PrimaryKey("PK_Foo", x => x.Id);
            });
    }
}

Но миграция не должна запускаться и создавать таблицу, потому что она уже существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...