您好我有一个列表,它被设置为网格视图的数据源。我的网格视图看起来像这样。
Green| Gold | Grade
----|---- | -------
2 | 1 | 100
3 | 1 | 101
- | 3 | 102
3 | - | 104
- | - | 105
8 | 5 | Total
但我想要这样
Grade |100 |101 |102 |103 |104 |105 |Total
--------- |---- |----|----|----|----|----|-----
Green |2 |3 |- |3 |8 |- |8
Gold |1 |1 |3 |- |3 |- |5
这是我的列表类
public class Value
{
public string Gold { get; set; }
public string Grade { get; set; }
public string Green { get; set; }
}
public class GetCACPopGuideResult
{
public object Type { get; set; }
public List<Value> Value { get; set; }
}
这就是我在代码
中所做的GetCACPopGuideResult result = getvalue();// Get the values to display
GridView1.DataSource= result.Value;
Public GetCACPopGuideResult getvalue()
{
string URL= myURL;
var cli = new RestClient(URL);
IRestRequest auctionRequest = new RestRequest(Method.GET);
IRestResponse responseCustomer = cli.Execute(auctionRequest);
return responseCustomer.Content;
}
我有可能在C#中做到这一点吗?请帮帮我。
提前致谢
答案 0 :(得分:0)
您无法在LINQ中创建动态对象。
您应该做的是将您在字典中收到的数据转换为此示例:
var dictionary = value
.GroupBy(v => v.Grade)
.ToDictionary(g => g.Key,
g => new
{
g.Select(x => x.Gold).FirstOrDefault(),
g.Select(x => x.Green).FirstOrDefault()
});