处理多个请求

时间:2010-08-28 09:23:34

标签: c# multithreading

我正在写一个订购系统。

在此程序中,用户可以请求食物。为此,我有一个名为User的类和一个名为Food的类。

在班级Program中,我有一个字段,它是一个包含食物对象的列表字段。在班级Program中,我还有一个用户对象字段。

现在我有点困惑。问题是,如果两个用户同时请求订单,我是否需要在我的Program类中使用用户列表,还是一个字段足够?或者我是否需要使用线程。

我编写应用程序的方式,它只是处理一个请求。那么进一步的请求呢?我需要应用哪些更改才能处理用户的请求?

我目前没有使用任何数据库(我不太熟悉)

class User {
  private string name;
  private string address;
  // ...
}

class Food {
  private string name;
  private int id;
  // ...
}

class Program {
  private User user;
  private List<Food> foods;
  // ...
}

2 个答案:

答案 0 :(得分:0)

如果你想将一个以上的食物对象与一个用户联系起来,你可以得到一个食物清单,其中包含每个用户的ID(这意味着每个用户类别中的食物清单),所以你可以添加订购的食物食物项目给每个用户,你应该在你的程序中有一个用户列表和一个食物列表,其中包含所有带有ID的默认食物项目。但是你为什么不看看使用数据库系统(如SQLite)或带有DataSet和DataTable的XML(你可以把你的食物作为XML文件,你可以很容易地将它加载到DataSet中或从一个数据集中保存它DataSet到XML文件)?

答案 1 :(得分:0)

为每位用户维护食物清单。你可以在这里找到一个词典。

class Program {
    private Dictionary<User, List<Food>> userFoodsMap;
    // ...
}

或者,您可以拥有一个将Food's绑定到User

的特殊类
class UserFoodsMap {
    private User user;
    private List<Food> foods;
    // ...
}

class Program {
    private List<UserFoodsMap> userFoodsMap;
    // ...
}