2.2 FileRequestType枚舉和FileProtocol結構
因為XML是以字符串的形式在進行傳輸,為了方便使用,我們最好構建一個強類型來對它們進行操作, 這樣會方便很多。我們首先可以定義FileRequestMode枚舉,它代表是發送還是接收文件:
public enum FileRequestMode {
Send = 0,
Receive
}
接下來我們再定義一個FileProtocol結構,用來為整個協議字符串提供強類型的訪問,注意這裡覆蓋 了基類的ToString()方法,這樣在客戶端我們就不需要再手工去編寫XML,只要在結構值上調用ToString ()就OK了,會方便很多。
public struct FileProtocol {
private readonly FileRequestMode mode;
private readonly int port;
private readonly string fileName;
public FileProtocol
(FileRequestMode mode, int port, string fileName) {
this.mode = mode;
this.port = port;
this.fileName = fileName;
}
public FileRequestMode Mode {
get { return mode; }
}
public
int
Port {
get { return port; }
}
public string FileName {
get { return fileName; }
}
public override string ToString() {
return String.Format("<protocol><file name=\"{0}\" mode=\"{1}\" port=\"{2}\" /></protocol>", fileName, mode, port);
}
}