TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
Konstantinos Dimos
NA
5
1.7k
Entity Framework Question
Mar 6 2018 2:02 AM
Hi I am trying the following in a migration file:
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropIndex("IX_CartLines_OrderID");
migrationBuilder.DropForeignKey(name: "FK_CartLines_Orders_OrderID", table: "CartLines");
migrationBuilder.DropPrimaryKey(name: "PK_Orders", table: "Orders");
migrationBuilder.DropTable(name: "Orders");
migrationBuilder.CreateTable(
name: "Orders",
columns: table => new
{
OrderID = table.Column<string>(nullable: false)
.Annotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn),
Address1 = table.Column<string>(nullable: false),
Address2 = table.Column<string>(nullable: true),
Address3 = table.Column<string>(nullable: true),
City = table.Column<string>(nullable: false),
Country = table.Column<string>(nullable: false),
GiftWrap = table.Column<bool>(nullable: false),
Name = table.Column<string>(nullable: false),
State = table.Column<string>(nullable: false),
Zip = table.Column<string>(nullable: false),
userId = table.Column<string>(nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Orders", x => x.OrderID);
table.ForeignKey(
name: "FK_Orders_AspNetUsers_userId",
column: x => x.userId,
principalTable: "AspNetUsers",
principalColumn: "Id",
onDelete: ReferentialAction.Restrict);
});
migrationBuilder.AddForeignKey(name: "FK_CartLines_Orders_OrderID", table: "CartLines", column: "OrderID", principalTable: "Orders", principalColumn: "OrderID", onUpdate: ReferentialAction.Cascade, onDelete: ReferentialAction.Cascade);
/* migrationBuilder.DropForeignKey(name: "FK_CartLines_Orders_OrderID", table: "CartLines");
migrationBuilder.DropPrimaryKey(name: "PK_Orders", table: "Orders");
migrationBuilder.AddColumn<int>(name: "test1", defaultValue: null, table: "Orders", nullable: true);
migrationBuilder.Sql("update Orders set test1 = OrderID");
migrationBuilder.DropColumn(name: "OrderID", table: "Orders");
migrationBuilder.RenameColumn(name: "test1", table: "Orders", newName: "OrderID");
migrationBuilder.AlterColumn<string>(name: "OrderID", type:"nvarchar(450)",table: "Orders", nullable: false, oldNullable: true, oldClrType: typeof(int));
migrationBuilder.DropIndex("IX_CartLines_OrderID");
migrationBuilder.AlterColumn<string>(name: "OrderID", table: "CartLines", type: "nvarchar(450)", oldClrType: typeof(int), nullable: false, oldNullable: true);
migrationBuilder.AddPrimaryKey(name: "PK_Orders", table: "Orders", column: "OrderID");
migrationBuilder.AddForeignKey(name: "FK_CartLines_Orders_OrderID", table: "CartLines", column: "OrderID", principalTable: "Orders", principalColumn: "OrderID", onUpdate: ReferentialAction.Cascade, onDelete: ReferentialAction.Cascade);
*/
/* migrationBuilder.DropForeignKey(
name: "FK_CartLines_Products_ProductId",
table: "CartLines");
migrationBuilder.AlterColumn<string>(
name: "Name",
table: "Products",
nullable: false,
oldClrType: typeof(string),
oldNullable: true);
migrationBuilder.AlterColumn<string>(
name: "Description",
table: "Products",
nullable: false,
oldClrType: typeof(string),
oldNullable: true);
migrationBuilder.AlterColumn<string>(
name: "Category",
table: "Products",
nullable: false,
oldClrType: typeof(string),
oldNullable: true);
migrationBuilder.AlterColumn<string>(
name: "OrderID",
table: "Orders",
nullable: false,
oldClrType: typeof(int))
.OldAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
migrationBuilder.AlterColumn<int>(
name: "ProductId",
table: "CartLines",
nullable: false,
oldClrType: typeof(int),
oldNullable: true);
migrationBuilder.AlterColumn<string>(
name: "OrderID",
table: "CartLines",
nullable: true,
oldClrType: typeof(int),
oldNullable: true);
migrationBuilder.AddForeignKey(
name: "FK_CartLines_Products_ProductId",
table: "CartLines",
column: "ProductId",
principalTable: "Products",
principalColumn: "ProductId",
onDelete: ReferentialAction.Cascade); */
}
and I get the following message:
Applying migration '20180301172108_ChangeOrderPKType'.
Applying migration '20180301172108_ChangeOrderPKType'.
System.ArgumentNullException: Value cannot be null.
Parameter name: name
at Microsoft.EntityFrameworkCore.Utilities.Check.NotEmpty(String value, String parameterName)
at Microsoft.EntityFrameworkCore.Storage.RelationalSqlGenerationHelper.DelimitIdentifier(String name, String schema)
at Microsoft.EntityFrameworkCore.Migrations.SqlServerMigrationsSqlGenerator.Generate(DropIndexOperation operation, IModel model, MigrationCommandListBuilder builder, Boolean terminate)
at Microsoft.EntityFrameworkCore.Migrations.SqlServerMigrationsSqlGenerator.Generate(DropIndexOperation operation, IModel model, MigrationCommandListBuilder builder)
at Microsoft.EntityFrameworkCore.Migrations.MigrationsSqlGenerator.Generate(MigrationOperation operation, IModel model, MigrationCommandListBuilder builder)
at Microsoft.EntityFrameworkCore.Migrations.MigrationsSqlGenerator.Generate(IReadOnlyList`1 operations, IModel model)
at Microsoft.EntityFrameworkCore.Migrations.SqlServerMigrationsSqlGenerator.Generate(IReadOnlyList`1 operations, IModel model)
at Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.GenerateUpSql(Migration migration)
at Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.Migrate(String targetMigration)
at Microsoft.EntityFrameworkCore.Design.Internal.MigrationsOperations.UpdateDatabase(String targetMigration, String contextType)
at Microsoft.EntityFrameworkCore.Design.OperationExecutor.UpdateDatabase.<>c__DisplayClass0_1.<.ctor>b__0()
at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(Action action)
Value cannot be null.
Parameter name: name
Any suggestion?
Reply
Answers (
2
)
angular js using multiple fields in a table for search filte
format issue is correct