美文网首页
code first修改表或字段

code first修改表或字段

作者: 张中华 | 来源:发表于2018-12-30 23:01 被阅读21次

    删除字段:
    1.去除表类字段,

    执行Add-Migration deletetest

    生成类:

    namespace MyBlogNew.Migrations
    {
        using System;
        using System.Data.Entity.Migrations;
        
        public partial class deletetest : DbMigration
        {
            public override void Up()
            {
                DropColumn("dbo.diary", "Test");
            }
            
            public override void Down()
            {
                AddColumn("dbo.diary", "Test", c => c.Int(nullable: false));
            }
        }
    }
    

    执行Update-Database

    当有其他修改,但该类并不能完成需求更改时,可直接修改该类,执行Update-Database。

    基类:

    #region 程序集 EntityFramework.dll, v6.0.0.0
    // F:\MyBlogNew\MyBlogNewApi\packages\EntityFramework.6.2.0\lib\net45\EntityFramework.dll
    #endregion
    
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data.Entity.Migrations.Builders;
    using System.Data.Entity.Migrations.Infrastructure;
    using System.Data.Entity.Migrations.Model;
    using System.Diagnostics.CodeAnalysis;
    using System.Reflection;
    
    namespace System.Data.Entity.Migrations
    {
        // 摘要: 
        //     Base class for code-based migrations.  Entity Framework Migrations APIs are
        //     not designed to accept input provided by untrusted sources (such as the end
        //     user of an application). If input is accepted from such sources it should
        //     be validated before being passed to these APIs to protect against SQL injection
        //     attacks etc.
        public abstract class DbMigration : IDbMigration
        {
            protected DbMigration();
    
            // 摘要: 
            //     Adds an operation to add a column to an existing table.  Entity Framework
            //     Migrations APIs are not designed to accept input provided by untrusted sources
            //     (such as the end user of an application). If input is accepted from such
            //     sources it should be validated before being passed to these APIs to protect
            //     against SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The name of the table to add the column to. Schema name is optional, if no
            //     schema is specified then dbo is assumed.
            //
            //   name:
            //     The name of the column to be added.
            //
            //   columnAction:
            //     An action that specifies the column to be added. i.e. c => c.Int(nullable:
            //     false, defaultValue: 3)
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void AddColumn(string table, string name, Func<ColumnBuilder, ColumnModel> columnAction, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to create a new foreign key constraint.  Entity Framework
            //     Migrations APIs are not designed to accept input provided by untrusted sources
            //     (such as the end user of an application). If input is accepted from such
            //     sources it should be validated before being passed to these APIs to protect
            //     against SQL injection attacks etc.
            //
            // 参数: 
            //   dependentTable:
            //     The table that contains the foreign key column. Schema name is optional,
            //     if no schema is specified then dbo is assumed.
            //
            //   dependentColumn:
            //     The foreign key column.
            //
            //   principalTable:
            //     The table that contains the column this foreign key references. Schema name
            //     is optional, if no schema is specified then dbo is assumed.
            //
            //   principalColumn:
            //     The column this foreign key references. If no value is supplied the primary
            //     key of the principal table will be referenced.
            //
            //   cascadeDelete:
            //     A value indicating if cascade delete should be configured for the foreign
            //     key relationship. If no value is supplied, cascade delete will be off.
            //
            //   name:
            //     The name of the foreign key constraint in the database. If no value is supplied
            //     a unique name will be generated.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void AddForeignKey(string dependentTable, string dependentColumn, string principalTable, string principalColumn = null, bool cascadeDelete = false, string name = null, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to create a new foreign key constraint.  Entity Framework
            //     Migrations APIs are not designed to accept input provided by untrusted sources
            //     (such as the end user of an application). If input is accepted from such
            //     sources it should be validated before being passed to these APIs to protect
            //     against SQL injection attacks etc.
            //
            // 参数: 
            //   dependentTable:
            //     The table that contains the foreign key columns. Schema name is optional,
            //     if no schema is specified then dbo is assumed.
            //
            //   dependentColumns:
            //     The foreign key columns.
            //
            //   principalTable:
            //     The table that contains the columns this foreign key references. Schema name
            //     is optional, if no schema is specified then dbo is assumed.
            //
            //   principalColumns:
            //     The columns this foreign key references. If no value is supplied the primary
            //     key of the principal table will be referenced.
            //
            //   cascadeDelete:
            //     A value indicating if cascade delete should be configured for the foreign
            //     key relationship. If no value is supplied, cascade delete will be off.
            //
            //   name:
            //     The name of the foreign key constraint in the database. If no value is supplied
            //     a unique name will be generated.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void AddForeignKey(string dependentTable, string[] dependentColumns, string principalTable, string[] principalColumns = null, bool cascadeDelete = false, string name = null, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to create a new primary key.  Entity Framework Migrations
            //     APIs are not designed to accept input provided by untrusted sources (such
            //     as the end user of an application). If input is accepted from such sources
            //     it should be validated before being passed to these APIs to protect against
            //     SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The table that contains the primary key column. Schema name is optional,
            //     if no schema is specified then dbo is assumed.
            //
            //   column:
            //     The primary key column.
            //
            //   name:
            //     The name of the primary key in the database. If no value is supplied a unique
            //     name will be generated.
            //
            //   clustered:
            //     A value indicating whether or not this is a clustered primary key.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void AddPrimaryKey(string table, string column, string name = null, bool clustered = true, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to create a new primary key based on multiple columns.
            //      Entity Framework Migrations APIs are not designed to accept input provided
            //     by untrusted sources (such as the end user of an application). If input is
            //     accepted from such sources it should be validated before being passed to
            //     these APIs to protect against SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The table that contains the primary key columns. Schema name is optional,
            //     if no schema is specified then dbo is assumed.
            //
            //   columns:
            //     The primary key columns.
            //
            //   name:
            //     The name of the primary key in the database. If no value is supplied a unique
            //     name will be generated.
            //
            //   clustered:
            //     A value indicating whether or not this is a clustered primary key.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void AddPrimaryKey(string table, string[] columns, string name = null, bool clustered = true, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to alter the definition of an existing column.  Entity
            //     Framework Migrations APIs are not designed to accept input provided by untrusted
            //     sources (such as the end user of an application). If input is accepted from
            //     such sources it should be validated before being passed to these APIs to
            //     protect against SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The name of the table the column exists in. Schema name is optional, if no
            //     schema is specified then dbo is assumed.
            //
            //   name:
            //     The name of the column to be changed.
            //
            //   columnAction:
            //     An action that specifies the new definition for the column. i.e. c => c.String(nullable:
            //     false, defaultValue: "none")
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void AlterColumn(string table, string name, Func<ColumnBuilder, ColumnModel> columnAction, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to alter a stored procedure.  Entity Framework Migrations
            //     APIs are not designed to accept input provided by untrusted sources (such
            //     as the end user of an application). If input is accepted from such sources
            //     it should be validated before being passed to these APIs to protect against
            //     SQL injection attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the stored procedure. Schema name is optional, if no schema is
            //     specified then dbo is assumed.
            //
            //   body:
            //     The body of the stored procedure.
            //
            //   anonymousArguments:
            //     The additional arguments that may be processed by providers. Use anonymous
            //     type syntax to specify arguments. For example, 'new { SampleArgument = "MyValue"
            //     }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            public void AlterStoredProcedure(string name, string body, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to alter a stored procedure.  Entity Framework Migrations
            //     APIs are not designed to accept input provided by untrusted sources (such
            //     as the end user of an application). If input is accepted from such sources
            //     it should be validated before being passed to these APIs to protect against
            //     SQL injection attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the stored procedure. Schema name is optional, if no schema is
            //     specified then dbo is assumed.
            //
            //   parametersAction:
            //     The action that specifies the parameters of the stored procedure.
            //
            //   body:
            //     The body of the stored procedure.
            //
            //   anonymousArguments:
            //     The additional arguments that may be processed by providers. Use anonymous
            //     type syntax to specify arguments. For example, 'new { SampleArgument = "MyValue"
            //     }'.
            //
            // 类型参数: 
            //   TParameters:
            //     The parameters in this alter stored procedure operation. You do not need
            //     to specify this type, it will be inferred from the parametersAction parameter
            //     you supply.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            public void AlterStoredProcedure<TParameters>(string name, Func<ParameterBuilder, TParameters> parametersAction, string body, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to handle changes in the annotations defined on tables.
            //      Entity Framework Migrations APIs are not designed to accept input provided
            //     by untrusted sources (such as the end user of an application). If input is
            //     accepted from such sources it should be validated before being passed to
            //     these APIs to protect against SQL injection attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the table. Schema name is optional, if no schema is specified
            //     then dbo is assumed.
            //
            //   columnsAction:
            //     An action that specifies the columns to be included in the table. i.e. t
            //     => new { Id = t.Int(identity: true), Name = t.String() }
            //
            //   annotations:
            //     The custom annotations on the table that have changed.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            //
            // 类型参数: 
            //   TColumns:
            //     The columns in this operation. You do not need to specify this type, it will
            //     be inferred from the columnsAction parameter you supply.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void AlterTableAnnotations<TColumns>(string name, Func<ColumnBuilder, TColumns> columnsAction, IDictionary<string, Data.Entity.Infrastructure.Annotations.AnnotationValues> annotations, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to create an index on a single column.  Entity Framework
            //     Migrations APIs are not designed to accept input provided by untrusted sources
            //     (such as the end user of an application). If input is accepted from such
            //     sources it should be validated before being passed to these APIs to protect
            //     against SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The name of the table to create the index on. Schema name is optional, if
            //     no schema is specified then dbo is assumed.
            //
            //   column:
            //     The name of the column to create the index on.
            //
            //   unique:
            //     A value indicating if this is a unique index. If no value is supplied a non-unique
            //     index will be created.
            //
            //   name:
            //     The name to use for the index in the database. If no value is supplied a
            //     unique name will be generated.
            //
            //   clustered:
            //     A value indicating whether or not this is a clustered index.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void CreateIndex(string table, string column, bool unique = false, string name = null, bool clustered = false, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to create an index on multiple columns.  Entity Framework
            //     Migrations APIs are not designed to accept input provided by untrusted sources
            //     (such as the end user of an application). If input is accepted from such
            //     sources it should be validated before being passed to these APIs to protect
            //     against SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The name of the table to create the index on. Schema name is optional, if
            //     no schema is specified then dbo is assumed.
            //
            //   columns:
            //     The name of the columns to create the index on.
            //
            //   unique:
            //     A value indicating if this is a unique index. If no value is supplied a non-unique
            //     index will be created.
            //
            //   name:
            //     The name to use for the index in the database. If no value is supplied a
            //     unique name will be generated.
            //
            //   clustered:
            //     A value indicating whether or not this is a clustered index.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void CreateIndex(string table, string[] columns, bool unique = false, string name = null, bool clustered = false, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to create a new stored procedure.  Entity Framework Migrations
            //     APIs are not designed to accept input provided by untrusted sources (such
            //     as the end user of an application). If input is accepted from such sources
            //     it should be validated before being passed to these APIs to protect against
            //     SQL injection attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the stored procedure. Schema name is optional, if no schema is
            //     specified then dbo is assumed.
            //
            //   body:
            //     The body of the stored procedure.
            //
            //   anonymousArguments:
            //     The additional arguments that may be processed by providers. Use anonymous
            //     type syntax to specify arguments. For example, 'new { SampleArgument = "MyValue"
            //     }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            public void CreateStoredProcedure(string name, string body, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to create a new stored procedure.  Entity Framework Migrations
            //     APIs are not designed to accept input provided by untrusted sources (such
            //     as the end user of an application). If input is accepted from such sources
            //     it should be validated before being passed to these APIs to protect against
            //     SQL injection attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the stored procedure. Schema name is optional, if no schema is
            //     specified then dbo is assumed.
            //
            //   parametersAction:
            //     The action that specifies the parameters of the stored procedure.
            //
            //   body:
            //     The body of the stored procedure.
            //
            //   anonymousArguments:
            //     The additional arguments that may be processed by providers. Use anonymous
            //     type syntax to specify arguments. For example, 'new { SampleArgument = "MyValue"
            //     }'.
            //
            // 类型参数: 
            //   TParameters:
            //     The parameters in this create stored procedure operation. You do not need
            //     to specify this type, it will be inferred from the parametersAction parameter
            //     you supply.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            public void CreateStoredProcedure<TParameters>(string name, Func<ParameterBuilder, TParameters> parametersAction, string body, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to create a new table.  Entity Framework Migrations APIs
            //     are not designed to accept input provided by untrusted sources (such as the
            //     end user of an application). If input is accepted from such sources it should
            //     be validated before being passed to these APIs to protect against SQL injection
            //     attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the table. Schema name is optional, if no schema is specified
            //     then dbo is assumed.
            //
            //   columnsAction:
            //     An action that specifies the columns to be included in the table. i.e. t
            //     => new { Id = t.Int(identity: true), Name = t.String() }
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            //
            // 类型参数: 
            //   TColumns:
            //     The columns in this create table operation. You do not need to specify this
            //     type, it will be inferred from the columnsAction parameter you supply.
            //
            // 返回结果: 
            //     An object that allows further configuration of the table creation operation.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal TableBuilder<TColumns> CreateTable<TColumns>(string name, Func<ColumnBuilder, TColumns> columnsAction, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to create a new table.  Entity Framework Migrations APIs
            //     are not designed to accept input provided by untrusted sources (such as the
            //     end user of an application). If input is accepted from such sources it should
            //     be validated before being passed to these APIs to protect against SQL injection
            //     attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the table. Schema name is optional, if no schema is specified
            //     then dbo is assumed.
            //
            //   columnsAction:
            //     An action that specifies the columns to be included in the table. i.e. t
            //     => new { Id = t.Int(identity: true), Name = t.String() }
            //
            //   annotations:
            //     Custom annotations that exist on the table to be created. May be null or
            //     empty.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            //
            // 类型参数: 
            //   TColumns:
            //     The columns in this create table operation. You do not need to specify this
            //     type, it will be inferred from the columnsAction parameter you supply.
            //
            // 返回结果: 
            //     An object that allows further configuration of the table creation operation.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal TableBuilder<TColumns> CreateTable<TColumns>(string name, Func<ColumnBuilder, TColumns> columnsAction, IDictionary<string, object> annotations, object anonymousArguments = null);
            //
            // 摘要: 
            //     Operations to be performed during the downgrade process.
            public virtual void Down();
            //
            // 摘要: 
            //     Adds an operation to drop an existing column.  Entity Framework Migrations
            //     APIs are not designed to accept input provided by untrusted sources (such
            //     as the end user of an application). If input is accepted from such sources
            //     it should be validated before being passed to these APIs to protect against
            //     SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The name of the table to drop the column from. Schema name is optional, if
            //     no schema is specified then dbo is assumed.
            //
            //   name:
            //     The name of the column to be dropped.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropColumn(string table, string name, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop an existing column.  Entity Framework Migrations
            //     APIs are not designed to accept input provided by untrusted sources (such
            //     as the end user of an application). If input is accepted from such sources
            //     it should be validated before being passed to these APIs to protect against
            //     SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The name of the table to drop the column from. Schema name is optional, if
            //     no schema is specified then dbo is assumed.
            //
            //   name:
            //     The name of the column to be dropped.
            //
            //   removedAnnotations:
            //     Custom annotations that exist on the column that is being dropped. May be
            //     null or empty.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropColumn(string table, string name, IDictionary<string, object> removedAnnotations, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop a foreign key constraint based on its name.  Entity
            //     Framework Migrations APIs are not designed to accept input provided by untrusted
            //     sources (such as the end user of an application). If input is accepted from
            //     such sources it should be validated before being passed to these APIs to
            //     protect against SQL injection attacks etc.
            //
            // 参数: 
            //   dependentTable:
            //     The table that contains the foreign key column. Schema name is optional,
            //     if no schema is specified then dbo is assumed.
            //
            //   name:
            //     The name of the foreign key constraint in the database.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropForeignKey(string dependentTable, string name, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop a foreign key constraint based on the column it
            //     targets.  Entity Framework Migrations APIs are not designed to accept input
            //     provided by untrusted sources (such as the end user of an application). If
            //     input is accepted from such sources it should be validated before being passed
            //     to these APIs to protect against SQL injection attacks etc.
            //
            // 参数: 
            //   dependentTable:
            //     The table that contains the foreign key column. Schema name is optional,
            //     if no schema is specified then dbo is assumed.
            //
            //   dependentColumn:
            //     The foreign key column.
            //
            //   principalTable:
            //     The table that contains the column this foreign key references. Schema name
            //     is optional, if no schema is specified then dbo is assumed.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropForeignKey(string dependentTable, string dependentColumn, string principalTable, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop a foreign key constraint based on the columns it
            //     targets.  Entity Framework Migrations APIs are not designed to accept input
            //     provided by untrusted sources (such as the end user of an application). If
            //     input is accepted from such sources it should be validated before being passed
            //     to these APIs to protect against SQL injection attacks etc.
            //
            // 参数: 
            //   dependentTable:
            //     The table that contains the foreign key columns. Schema name is optional,
            //     if no schema is specified then dbo is assumed.
            //
            //   dependentColumns:
            //     The foreign key columns.
            //
            //   principalTable:
            //     The table that contains the columns this foreign key references. Schema name
            //     is optional, if no schema is specified then dbo is assumed.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropForeignKey(string dependentTable, string[] dependentColumns, string principalTable, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop a foreign key constraint based on the column it
            //     targets.  Entity Framework Migrations APIs are not designed to accept input
            //     provided by untrusted sources (such as the end user of an application). If
            //     input is accepted from such sources it should be validated before being passed
            //     to these APIs to protect against SQL injection attacks etc.
            //
            // 参数: 
            //   dependentTable:
            //     The table that contains the foreign key column.  Schema name is optional,
            //     if no schema is specified then dbo is assumed.
            //
            //   dependentColumn:
            //     The foreign key column.
            //
            //   principalTable:
            //     The table that contains the column this foreign key references.  Schema name
            //     is optional, if no schema is specified then dbo is assumed.
            //
            //   principalColumn:
            //     The columns this foreign key references.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers.  Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [Obsolete("The principalColumn parameter is no longer required and can be removed.")]
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            [SuppressMessage("Microsoft.Usage", "CA1801:ReviewUnusedParameters", MessageId = "principalColumn")]
            protected internal void DropForeignKey(string dependentTable, string dependentColumn, string principalTable, string principalColumn, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop an index based on its name.  Entity Framework Migrations
            //     APIs are not designed to accept input provided by untrusted sources (such
            //     as the end user of an application). If input is accepted from such sources
            //     it should be validated before being passed to these APIs to protect against
            //     SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The name of the table to drop the index from. Schema name is optional, if
            //     no schema is specified then dbo is assumed.
            //
            //   name:
            //     The name of the index to be dropped.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropIndex(string table, string name, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop an index based on the columns it targets.  Entity
            //     Framework Migrations APIs are not designed to accept input provided by untrusted
            //     sources (such as the end user of an application). If input is accepted from
            //     such sources it should be validated before being passed to these APIs to
            //     protect against SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The name of the table to drop the index from. Schema name is optional, if
            //     no schema is specified then dbo is assumed.
            //
            //   columns:
            //     The name of the column(s) the index targets.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropIndex(string table, string[] columns, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop an existing primary key that was created with the
            //     default name.  Entity Framework Migrations APIs are not designed to accept
            //     input provided by untrusted sources (such as the end user of an application).
            //     If input is accepted from such sources it should be validated before being
            //     passed to these APIs to protect against SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The table that contains the primary key column. Schema name is optional,
            //     if no schema is specified then dbo is assumed.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropPrimaryKey(string table, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop an existing primary key that does not have the
            //     default name.  Entity Framework Migrations APIs are not designed to accept
            //     input provided by untrusted sources (such as the end user of an application).
            //     If input is accepted from such sources it should be validated before being
            //     passed to these APIs to protect against SQL injection attacks etc.
            //
            // 参数: 
            //   table:
            //     The table that contains the primary key column. Schema name is optional,
            //     if no schema is specified then dbo is assumed.
            //
            //   name:
            //     The name of the primary key to be dropped.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropPrimaryKey(string table, string name, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop an existing stored procedure with the specified
            //     name.  Entity Framework Migrations APIs are not designed to accept input
            //     provided by untrusted sources (such as the end user of an application). If
            //     input is accepted from such sources it should be validated before being passed
            //     to these APIs to protect against SQL injection attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the procedure to drop. Schema name is optional, if no schema
            //     is specified then dbo is assumed.
            //
            //   anonymousArguments:
            //     The additional arguments that may be processed by providers. Use anonymous
            //     type syntax to specify arguments. For example, 'new { SampleArgument = "MyValue"
            //     }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            public void DropStoredProcedure(string name, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop a table.  Entity Framework Migrations APIs are
            //     not designed to accept input provided by untrusted sources (such as the end
            //     user of an application). If input is accepted from such sources it should
            //     be validated before being passed to these APIs to protect against SQL injection
            //     attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the table to be dropped. Schema name is optional, if no schema
            //     is specified then dbo is assumed.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropTable(string name, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop a table.  Entity Framework Migrations APIs are
            //     not designed to accept input provided by untrusted sources (such as the end
            //     user of an application). If input is accepted from such sources it should
            //     be validated before being passed to these APIs to protect against SQL injection
            //     attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the table to be dropped. Schema name is optional, if no schema
            //     is specified then dbo is assumed.
            //
            //   removedColumnAnnotations:
            //     Custom annotations that exist on columns of the table that is being dropped.
            //     May be null or empty.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropTable(string name, IDictionary<string, IDictionary<string, object>> removedColumnAnnotations, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop a table.  Entity Framework Migrations APIs are
            //     not designed to accept input provided by untrusted sources (such as the end
            //     user of an application). If input is accepted from such sources it should
            //     be validated before being passed to these APIs to protect against SQL injection
            //     attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the table to be dropped. Schema name is optional, if no schema
            //     is specified then dbo is assumed.
            //
            //   removedAnnotations:
            //     Custom annotations that exist on the table that is being dropped. May be
            //     null or empty.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropTable(string name, IDictionary<string, object> removedAnnotations, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to drop a table.  Entity Framework Migrations APIs are
            //     not designed to accept input provided by untrusted sources (such as the end
            //     user of an application). If input is accepted from such sources it should
            //     be validated before being passed to these APIs to protect against SQL injection
            //     attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the table to be dropped. Schema name is optional, if no schema
            //     is specified then dbo is assumed.
            //
            //   removedAnnotations:
            //     Custom annotations that exist on the table that is being dropped. May be
            //     null or empty.
            //
            //   removedColumnAnnotations:
            //     Custom annotations that exist on columns of the table that is being dropped.
            //     May be null or empty.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void DropTable(string name, IDictionary<string, object> removedAnnotations, IDictionary<string, IDictionary<string, object>> removedColumnAnnotations, object anonymousArguments = null);
            //
            [EditorBrowsable(EditorBrowsableState.Never)]
            public override bool Equals(object obj);
            //
            [EditorBrowsable(EditorBrowsableState.Never)]
            public override int GetHashCode();
            //
            [EditorBrowsable(EditorBrowsableState.Never)]
            [SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")]
            public Type GetType();
            //
            [EditorBrowsable(EditorBrowsableState.Never)]
            protected object MemberwiseClone();
            //
            // 摘要: 
            //     Adds an operation to move a stored procedure to a new schema.  Entity Framework
            //     Migrations APIs are not designed to accept input provided by untrusted sources
            //     (such as the end user of an application). If input is accepted from such
            //     sources it should be validated before being passed to these APIs to protect
            //     against SQL injection attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the stored procedure to be moved. Schema name is optional, if
            //     no schema is specified then dbo is assumed.
            //
            //   newSchema:
            //     The schema the stored procedure is to be moved to.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void MoveStoredProcedure(string name, string newSchema, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to move a table to a new schema.  Entity Framework Migrations
            //     APIs are not designed to accept input provided by untrusted sources (such
            //     as the end user of an application). If input is accepted from such sources
            //     it should be validated before being passed to these APIs to protect against
            //     SQL injection attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the table to be moved. Schema name is optional, if no schema
            //     is specified then dbo is assumed.
            //
            //   newSchema:
            //     The schema the table is to be moved to.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void MoveTable(string name, string newSchema, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to rename a column.  Entity Framework Migrations APIs are
            //     not designed to accept input provided by untrusted sources (such as the end
            //     user of an application). If input is accepted from such sources it should
            //     be validated before being passed to these APIs to protect against SQL injection
            //     attacks etc.
            //
            // 参数: 
            //   table:
            //     The name of the table that contains the column to be renamed. Schema name
            //     is optional, if no schema is specified then dbo is assumed.
            //
            //   name:
            //     The name of the column to be renamed.
            //
            //   newName:
            //     The new name for the column.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void RenameColumn(string table, string name, string newName, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to rename an index.  Entity Framework Migrations APIs are
            //     not designed to accept input provided by untrusted sources (such as the end
            //     user of an application). If input is accepted from such sources it should
            //     be validated before being passed to these APIs to protect against SQL injection
            //     attacks etc.
            //
            // 参数: 
            //   table:
            //     The name of the table that contains the index to be renamed. Schema name
            //     is optional, if no schema is specified then dbo is assumed.
            //
            //   name:
            //     The name of the index to be renamed.
            //
            //   newName:
            //     The new name for the index.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void RenameIndex(string table, string name, string newName, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to rename a stored procedure. To change the schema of a
            //     stored procedure use MoveStoredProcedure Entity Framework Migrations APIs
            //     are not designed to accept input provided by untrusted sources (such as the
            //     end user of an application). If input is accepted from such sources it should
            //     be validated before being passed to these APIs to protect against SQL injection
            //     attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the stored procedure to be renamed. Schema name is optional,
            //     if no schema is specified then dbo is assumed.
            //
            //   newName:
            //     The new name for the stored procedure. Schema name is optional, if no schema
            //     is specified then dbo is assumed.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void RenameStoredProcedure(string name, string newName, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to rename a table. To change the schema of a table use
            //     MoveTable.  Entity Framework Migrations APIs are not designed to accept input
            //     provided by untrusted sources (such as the end user of an application). If
            //     input is accepted from such sources it should be validated before being passed
            //     to these APIs to protect against SQL injection attacks etc.
            //
            // 参数: 
            //   name:
            //     The name of the table to be renamed. Schema name is optional, if no schema
            //     is specified then dbo is assumed.
            //
            //   newName:
            //     The new name for the table. Schema name is optional, if no schema is specified
            //     then dbo is assumed.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            protected internal void RenameTable(string name, string newName, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to execute a SQL command or set of SQL commands.  Entity
            //     Framework Migrations APIs are not designed to accept input provided by untrusted
            //     sources (such as the end user of an application). If input is accepted from
            //     such sources it should be validated before being passed to these APIs to
            //     protect against SQL injection attacks etc.
            //
            // 参数: 
            //   sql:
            //     The SQL to be executed.
            //
            //   suppressTransaction:
            //     A value indicating if the SQL should be executed outside of the transaction
            //     being used for the migration process. If no value is supplied the SQL will
            //     be executed within the transaction.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            [SuppressMessage("Microsoft.Naming", "CA1719:ParameterNamesShouldNotMatchMemberNames", MessageId = "0#")]
            protected internal void Sql(string sql, bool suppressTransaction = false, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to execute a SQL file.  Entity Framework Migrations APIs
            //     are not designed to accept input provided by untrusted sources (such as the
            //     end user of an application). If input is accepted from such sources it should
            //     be validated before being passed to these APIs to protect against SQL injection
            //     attacks etc.
            //
            // 参数: 
            //   sqlFile:
            //     The SQL file to be executed. Relative paths are assumed to be relative to
            //     the current AppDomain's BaseDirectory.
            //
            //   suppressTransaction:
            //     A value indicating if the SQL should be executed outside of the transaction
            //     being used for the migration process. If no value is supplied the SQL will
            //     be executed within the transaction.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            [SuppressMessage("Microsoft.Naming", "CA1719:ParameterNamesShouldNotMatchMemberNames", MessageId = "0#")]
            protected internal void SqlFile(string sqlFile, bool suppressTransaction = false, object anonymousArguments = null);
            //
            // 摘要: 
            //     Adds an operation to execute a SQL resource file.  Entity Framework Migrations
            //     APIs are not designed to accept input provided by untrusted sources (such
            //     as the end user of an application). If input is accepted from such sources
            //     it should be validated before being passed to these APIs to protect against
            //     SQL injection attacks etc.
            //
            // 参数: 
            //   sqlResource:
            //     The manifest resource name of the SQL resource file to be executed.
            //
            //   resourceAssembly:
            //     The assembly containing the resource file. The calling assembly is assumed
            //     if not provided.
            //
            //   suppressTransaction:
            //     A value indicating if the SQL should be executed outside of the transaction
            //     being used for the migration process. If no value is supplied the SQL will
            //     be executed within the transaction.
            //
            //   anonymousArguments:
            //     Additional arguments that may be processed by providers. Use anonymous type
            //     syntax to specify arguments e.g. 'new { SampleArgument = "MyValue" }'.
            [SuppressMessage("Microsoft.Design", "CA1026:DefaultParametersShouldNotBeUsed")]
            [SuppressMessage("Microsoft.Naming", "CA1719:ParameterNamesShouldNotMatchMemberNames", MessageId = "0#")]
            protected internal void SqlResource(string sqlResource, Assembly resourceAssembly = null, bool suppressTransaction = false, object anonymousArguments = null);
            //
            [EditorBrowsable(EditorBrowsableState.Never)]
            public override string ToString();
            //
            // 摘要: 
            //     Operations to be performed during the upgrade process.
            public abstract void Up();
        }
    }
    
    

    相关文章

      网友评论

          本文标题:code first修改表或字段

          本文链接:https://www.haomeiwen.com/subject/zdmipftx.html