我正在写一个应用程序,
该应用程序的主要目的是能够使用一个人的 Gmail 帐户快速发送电子邮件(不阅读电子邮件,只是发送)。
我有一个“GmailAccount”类,它使用用户的用户名和密码在其构造函数中创建一个 SmtpClient 对象。它还有一个“发送”方法,该方法采用将由我的 UI 构建并传递过来的 MailMessage。
我遇到的问题是,我还想轮询 Gmail 的联系人列表,以便在用户输入电子邮件地址时我可以“自动填充”。
我应该把这门课分开,还是我也应该这样做:
1) 下载客户联系人列表到磁盘
2) 在我的 to/cc/bcc 字段上有一个击键方法,对于每个键入的字符,轮询 GmailAccount.FindContact() 方法以查看是否有匹配?
3) 如果匹配,则传递完整地址。
感谢您的帮助!
最佳答案
一切都是关于什么适合您,以及您的(整个)应用程序如何工作。
就个人而言,我会将联系人放在 GmailAccount
下,因为联系人是 Gmail 帐户的一部分。你可能不同意,但你这样做是完全正确的,因为类设计是主观的。
我见过很多类设计,它们有一个属性和一个类,然后在其中有另一个类 + 一个字段。该程序的作者可能会觉得这样做很好,但我个人不同意他的类设计。事实是,我们都是对的。
关于C# - 基本类设计问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6804634/