J'essaie d'insérer des données dans ma base de données en utilisant le modèle Entity Framework, mais pour des raisons inconnues pour moi, cela ne fait rien.
Est-ce que j'ai râté quelque chose?
using (var context = new DatabaseEntities())
{
var t = new test
{
ID = Guid.NewGuid(),
name = "blah",
};
context.AddTotest(t);
context.SaveChanges();
}
c#
.net
entity-framework
Rocshy
la source
la source
Réponses:
Ça devrait être:
Où:
TableName
: le nom de la table dans la base de données.TableEntityInstance
: une instance de la classe d'entité table.Si votre table est
Orders
, alors:Par exemple:
Voici un exemple en direct:
la source
Devrait le faire
la source
[HttpPost] // il est utilisé lorsque vous écrivez une logique sur l'événement de clic de bouton
la source
J'utilise EF6 et je trouve quelque chose d'étrange,
Supposons que le client ait un constructeur avec un paramètre,
si j'utilise
new Customer(id, "name")
et faisIl fonctionne sans erreur, mais quand je regarde dans la base de données, je constate en fait que les données ne sont PAS insérées,
Mais si j'ajoute les accolades, utilisez
new Customer(id, "name"){}
et faitesles données seront alors effectivement insérées,
semble que les Brackets Curly font la différence, je suppose que ce n'est que lorsque vous ajoutez des Brackets Curly que le framework d'entité reconnaîtra qu'il s'agit d'une vraie donnée concrète.
la source