Search code examples
fluent-migrator

Can I create a column of nvarchar(MAX) using FluentMigrator?


Using FluentMigrator, the default creation of a Column using .AsString() results in an nvarchar(255). Is there a simple way (before I modify the FluentMigrator code) to create a column of type nvarchar(MAX)?


Solution

  • You could create an extension method to wrap .AsString(Int32.MaxValue) within .AsMaxString()

    e.g.

    internal static class MigratorExtensions
    {
        public static ICreateTableColumnOptionOrWithColumnSyntax AsMaxString(this ICreateTableColumnAsTypeSyntax createTableColumnAsTypeSyntax)
        {
            return createTableColumnAsTypeSyntax.AsString(int.MaxValue);
        }
    }