Pour notre projet, nous utilisons Entity Framework (Version 6) avec la première base de données de code. Ainsi, lorsque nous voulons changer une procédure ou une table, nous faisons cela dans une classe et générons un fichier de migration pour mettre à jour la base de données (simple Update-Database
dans la fenêtre Paket-Manager).Modification d'une vue dans EntityFramework CF avec fichiers de migration
Si nous voulons changer quelque chose qui n'a pas eu une classe (comme une vue ou une procédure) on change le fichier de migration, qui ressemblera à cela comme un exemple:
public override void Up()
{
//Some other code...
Sql("ALTER VIEW ExampleView AS Select [Endless Lines of code]");
}
Quand il vient pour de plus grandes vues, il devient très salissant très rapidement.
Ma question est
est-il un moyen « intelligent » de mettre à jour des petites choses dans une procédure ou peut-être une vue (comme changer quelque chose dans la déclaration FROM
) sans créer toute une instruction SQL qui compte plusieurs lignes juste pour faire ça?
Oui, nous nous sommes éloignés de cela. Travailler avec des fichiers .sql était notre solution précédente. Et avec smart, je veux dire quelque chose peut-être moins salissant. – Cataklysim
Je vois, vous n'êtes pas le seul à lutter contre cela. Voir la discussion [ici] (https://github.com/aspnet/EntityFramework/issues/827) sur github – Hintham
Intéressant. Eh bien, j'espère qu'ils vont bientôt ajouter la cartographie des vues. Mais merci pour ce lien. Cela montre des solutions de contournement très intéressantes. – Cataklysim