Je voudrais utiliser SQL Server xml comme type de colonne pour une classe d'entité.Type de données XML dans EF 4.1 Code Premier
Selon this thread il est possible de tracer une telle colonne à type chaîne:
public class XmlEntity
{
public int Id { get; set; }
[Column(TypeName="xml")]
public string XmlValue { get; set; }
}
Le tableau est correctement généré dans le datebase par cette définition. De nouveaux objets XmlEntity peuvent également être créés.
Mais j'essaie d'obtenir une entité de la base de données:
var entity = db.XmlEntities.Where(e => e.Id == 1).FirstOrDefault();
Une erreur se produit:
ont été détectés Une ou plusieurs erreurs de validation lors de la génération de modèle System.Data .Edm.EdmEntityType: EntityType 'XElement' n'a pas de clé définie. Définissez la clé pour cet EntityType.
Merci pour le partage! –
@alexey, excellente question et réponse, mais la question n'aurait-elle pas plus de sens si vous y incluiez la propriété XElement - par les articles MSDN? Actuellement, il n'y a pas de propriété XElement. Il n'est donc pas clair que le seul changement est l'attribut [NotMapped]. –