如何将邮件移动到单独的文件夹中

时间:2013-08-13 11:00:09

标签: c# asp.net

我正在处理像邮件应用程序这样的gmail。我已经创建了注册登录并创建邮件并显示收到邮件的收件箱。要显示收件箱,我将执行以下步骤。 首先,我创建了一个名为getdata的数据库,并将所有用户的邮件存储在该数据库中。 当用户登录他的帐户时,我使用以下代码显示来自整个数据库的邮件

public static DataSet Get_Data_id(string mailid, int Sno)
{
    DataSet ds = new DataSet();
    SqlCommand cmd = new SqlCommand();
    cmd.CommandText = "select * from AddData where Sno='" + Sno + "' and EmailID='" + mailid + "'";
    ds = SQLHelper.ExecuteAdapter(cmd, CommandType.Text, cmd.CommandText);
    return ds;
} 

我已经为每个用户提供了序列号。使用序列号和他的邮件ID我填写了他/她的收件箱。现在问题是我需要将这些消息移动到单独的文件夹中 我有一个收件箱中每个邮件的复选框,点击它会出现一个下拉窗口,就像在gmail中一样。但我怀疑是否需要将所有邮件移动到单独的数据库中?在这种情况下,我需要大量的数据库,如一个文件夹的一个数据库。还有另一个问题,例如每个用户都有不同的文件夹名称。如何克服它。我应该如何设计数据库以及如何将邮件移动到每个用户的单独文件夹中?

2 个答案:

答案 0 :(得分:3)

如果要复制Gmail,请不要制作文件夹,制作标签。

创建一个包含每个用户标记的表(tagid,userid,tagname)

创建一个包含电子邮件和标签之间关系的表格(emailid,tagid)

这样,电子邮件可以包含多个标签,标签可以包含多个电子邮件。

也可以按用户检索所有标签。

答案 1 :(得分:1)

您需要动态创建数据库。这称为“动态数据库” 查看这篇文章可能有所帮助:

Dynamic Database Schema