J'utilise une ancienne version de Sharp arch sur un projet et j'essaie de sérialiser en utilisant JSON.NET. JavascriptSerializer fonctionne, mais je préfère JSON.NET pour les préférences.pourquoi json.net ne montre que la classe s # arp EntityWithTypedId?
Voici le problème. Pour une raison quelconque, lorsque je tente de sérialisation d'un simple objet pointu, je reçois le texte suivant:
// my sharp object
[Serializable]
public class Contact : Entity
{
public virtual string EmailAddress { get; set; }
}
...
// in sharp, this is what happens to Entity
[Serializable]
public abstract class Entity : EntityWithTypedId<int> {
protected Entity();
}
// and then into EntityWithTypedId
[Serializable]
public abstract class EntityWithTypedId<IdT> : ValidatableObject, IEntityWithTypedId<IdT> {
protected EntityWithTypedId();
[JsonProperty]
[XmlIgnore]
public virtual IdT Id { get; protected set; }
public override bool Equals(object obj);
public override int GetHashCode();
protected override IEnumerable<PropertyInfo> GetTypeSpecificSignatureProperties();
public virtual bool IsTransient();
}
Quand je lance la conversion JSON suivant, je ne reçoivent que { "Id" : 0 }
en conséquence.
Contact test = new Contact {
EmailAddress = "[email protected]"
};
string result = JsonConvert.SerializeObject(test);
Des idées sur la façon de renvoyer tout le contenu de l'objet?
Juste [testé] (https://github.com/seif/Sharp-Architecture/commit/c1757af64c19465e930b2c8f92e2b8ecbcce3a1d) exactement ce que vous avez donné avec la dernière version de l'architecture forte et l'objet a été correctement sérialisé, quelle version de SharpArchitecture/Newtonsoft.Json utilisez-vous? –
Salut Attar, actuellement nous devons coller avec SharpArch.dll v1.6.0.0. Et la dernière version de Newtonsoft.Json. – sonjz