efコアの初期開発アプリケーションにあります。どのようにしてコアがどうなっているのかよく分かりません モデルスナップショットは、Migrationsやデータベースなどの他のコンポーネントと通信/フローします。まず、MigrationまたはModelスナップショットのどちらにデータベースに適用されるのかわかりません。チーム環境でのentityframeworkコアモデルスナップショットに関する問題
私の場合:TFSで利用可能
- 既存の移行&スナップショット(開発者が&が彼のシステムから Migraton &モデルのスナップショットを犯しテスト)。
- Dev 2がシステムから最新のものになり、保留中の変更なしに新しいデータベースを指しています。
update-database
を実行すると、その列が既に削除されているエラーに直面しています。
ALTER TABLE DROP COLUMNの列 'CreatedDateTimeは' テーブル 'TaskEntityRelationships' に存在しないために失敗しました。
簡体スナップショット:
modelBuilder.Entity("KrossDelivery.Data.Objects.TaskEntityRelationships.TaskEntityRelationship", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd();
b.Property<int>("CreationTransactionId");
b.Property<int>("DeliveryAgentId");
b.Property<int>("DeliveryExecutiveId");
b.Property<DateTime?>("EndDateTime");
b.Property<int?>("LastEditTransactionId");
b.Property<DateTime>("StartDateTime");
b.Property<int?>("TaskEntityStatusEventId");
b.Property<int?>("TaskEntityStatusId");
b.Property<int>("TaskId");
b.HasKey("Id");
b.HasIndex("CreationTransactionId");
b.HasIndex("DeliveryAgentId");
b.HasIndex("DeliveryExecutiveId");
b.HasIndex("LastEditTransactionId");
b.HasIndex("TaskEntityStatusEventId");
b.HasIndex("TaskEntityStatusId");
b.HasIndex("TaskId");
b.ToTable("TaskEntityRelationships");
});
簡素化の移行:
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "CreatedDateTime",
table: "TaskEntityRelationships");
}
コードから
私はCreatedDateTimeが既にsnapshot.Dev Aが移行して彼のモデルのスナップショットを犯しモデルから落下することを理解することができますが、DEV2最新のものを取り、新しいデータベースが動作していないことを指摘してください。私はモデルスナップショットと移行をどのように管理するのかわからず、TFSでコミットすべき順序は何ですか?
お願いします。ありがとうございます!
共有していただきありがとうございます。[あなたの回答を回答としてマークする](https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)も役立ちますコミュニティの他の人たち。 – Chamberlain