Puis-je créer une colonne de type nvarchar(MAX) à l'aide de FluentMigrator?
À l'aide de FluentMigrator, la valeur par défaut de la création d'un Column
à l'aide de .AsString()
résultats dans un nvarchar(255)
. Est-il un moyen simple (avant que je modifie le FluentMigrator code) pour créer une colonne de type nvarchar(MAX)
?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez créer une méthode d'extension pour l'envelopper .AsString(Int32.MaxValue) à l'intérieur .AsMaxString()
par exemple
OK, je l'ai trouvé. Fondamentalement, il faut utiliser .AsString(Int32.MaxValue). Dommage il n'y a pas un .AsMaxString() la méthode, mais je suppose que c'est assez facile à mettre en...
Vous pouvez utiliser
AsCustom("nvarchar(max)")
et il pack d'extensionSi vous créez souvent des colonnes, tableaux, avec les mêmes paramètres ou groupes de colonnes, vous devez créer les méthodes d'extension pour votre migrations!
Par exemple, presque tous l'un de mes tableaux a CreatedAt et UpdatedAt colonnes DateTime, donc j'ai préparé un peu de méthode d'extension donc je peux dire:
Je pense j'ai créé la méthode d'Extension correctement ... je sais que ça fonctionne, mais FluentMigrator a un BEAUCOUP des interfaces ... ici, il est:
De même, près de chacun de mes tableaux est un int primary key appelé 'Id', donc je pense que je vais ajouter
Table.CreateWithId("Foos")
d'ajouter toujours d'identification que pour moi. Je ne sais pas ... en fait je viens de commencé à utiliser FluentMigrator aujourd'hui, mais vous devriez toujours être refactoring si possible!REMARQUE: Si vous faites helper/méthodes d'extension pour les opérations de migration, vous devez jamais jamais jamais changer ce que ces méthodes ne. Si vous le faites, quelqu'un pourrait essayer de lancer votre migrations et les choses pourraient exploser parce que les méthodes d'assistance que vous avez utilisé pour créer la Migration #1 fonctionne différemment maintenant qu'ils l'ont fait plus tôt.
Voici le code pour créer des colonnes au cas où cela vous aide à créer des méthodes d'assistance: https://github.com/schambers/fluentmigrator/blob/master/src/FluentMigrator/Builders/Create/Column/CreateColumnExpressionBuilder.cs