我不确定如何说出这个问题。基本上我在我的数据库中有一个表,如下所示:
Table1
_________
|id |
|_________|
|services |
|_________|
|solutions|
|_________|
但在我的模型中,我试图将其映射到三个对象:
class studies
{
public int id {get;set;}
public List<Service> services {get;set;}
public List<Solution> solutions {get;set;}
}
class Solution
{
public int id {get;set;}
public string description {get;set;}
}
class Service
{
public int id {get;set;}
public string description {get;set;}
}
所以我需要做的是从数据库中提取所有表数据,然后将其重新分配给我的类。我该怎么办?我在不允许更改表结构的约束下工作,所以只是重新设计数据库不是一种选择。
答案 0 :(得分:2)
我将从一组Study对象中的DB中检索数据:
class Study
{
public int ID {get; set;}
public string Solutions {get; set;}
public string Services {get; set;}
}
然后,我必须遍历集合并解析解决方案和服务字符串,以便为每个组合的两个词典“解决方案”和“服务”解释,其中密钥将分别是每个解决方案和服务的名称,值将是关联的列表服务(用于解决方案密钥)或相关解决方案(用于服务密钥)。类似的东西:
var solutions = new Dictionary<string, List<string>>();
var services = new Dictionary<string, List<string>>();
不确定语法是否正确,但您明白了。填充字典时,请确保不要在任何特定键的解决方案/服务列表中插入重复值。
然后,查找“service1”的可用解决方案列表将类似于:
var service1Solutions = services["service1"];