我编写的应用程序需要Wireshark
文件(Pcap,Snopp,Pcapng ...)打开此文件并阅读所有Packets
。
所以我创建这个abstract class
,每个继承自这个类的类都需要实现明显的方法才能具有打开特定格式的能力:
public abstract class WiresharkFile
{
protected string _fileName;
protected int _packets;
protected string _duration;
public abstract void ReadFileDetails();
}
所有子类:
public class Libpcap : WiresharkFile, IDisposable, IEnumerable<WiresharkFilePacket>
{
....
}
现在循环特定格式并读取数据包时:
using (wiresharkFile = new Libpcap(file))
{
}
我有这个编译错误:
type used in a using statement must be implicitly convertible to 'System.IDisposable'
所以我的问题是为什么我需要在我的基类中实现IDisposable
如果我不能从这个类型创建对象以及我应该在我的基类的Dispose
内写什么?