Bonjour,
Je désire implémenter la classe abstraite suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
    public abstract class HttpLayer : SimpleLayer, IEquatable<HttpLayer>
    {
        protected HttpLayer();
 
       public Datagram Body { get; set; }
       public HttpHeader Header { get; set; }
       public abstract bool IsRequest { get; }
       public bool IsResponse { get; }
       public override int Length { get; }
       public HttpVersion Version { get; set; }
 
       public virtual bool Equals(HttpLayer other);
       public override bool Equals(Layer other);
       protected override void Write(byte[] buffer, int offset);
    }
J'essaye de créer la classe dérivée suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 public class testHttp : HttpLayer
    {    
        public testHttp() : base()
        {
 
        }
 
        public override bool IsRequest
        {
            get { throw new NotImplementedException(); }
        }
    }
Les erreurs suivantes apparaissent à la compilation:

Erreur 1 '...testHttp' n'implémente pas le membre abstract hérité '...Http.HttpLayer.WriteFirstLine(byte[], ref int)'

Erreur 2 '...testHttp' n'implémente pas le membre abstract hérité 'PcapDotNet.Packets.Http.HttpLayer.FirstLineLength.get'
Je ne trouve aucune trace sous Visual Studio de ces deux membres WriteFirstLine et FirstLineLength.
J'ai essayé en implémentant dans la classe dérivée Write et Length, sans succès.

J'ai cherché des pistes sur le net, mais je n'arrive toujours pas à comprendre comment implémenter cette classe HttpLayer. De plus, je me demande ce que je doit mettre dans:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 public override bool IsRequest
        {
            get { throw new NotImplementedException();//??? }
        }
J'ai testé,
get { return !base.IsResponse; }
,mais sans grande conviction...

Je vous remercie pour toute aide!