相关疑难解决方法(0)

如何动态新的匿名类?

在C#3.0中,您可以使用以下语法创建匿名类

var o1 = new { Id = 1, Name = "Foo" };
Run Code Online (Sandbox Code Playgroud)

有没有办法动态地创建这些匿名类到变量?


例:

var o1 = new { Id = 1, Name = "Foo" };
var o2 = new { SQ = 2, Birth = DateTime.Now };
Run Code Online (Sandbox Code Playgroud)

动态创建示例:

var o1 = DynamicNewAnonymous(new NameValuePair("Id", 1), new NameValuePair("Name", "Foo"));
var o2 = DynamicNewAnonymous(new NameValuePair("SQ", 2), new NameValuePair("Birth", 
DateTime.Now));
Run Code Online (Sandbox Code Playgroud)

因为我需要这样做:

dynamic o1 = new ExpandObject(); 
o1."ID" = 1;    <--"ID" is dynamic name
o1."Name" = "Foo";  <--"Name" is dynamic name
Run Code Online (Sandbox Code Playgroud)

和Scene1:

void …
Run Code Online (Sandbox Code Playgroud)

c# anonymous-types c#-3.0

91
推荐指数
2
解决办法
13万
查看次数

用linq多个和一个匿名类型?

我有这个简单的数据表:

 type (string)   |       cnt (int)     
_____________________________________
aaa                         1
aaa                         2
aaa                         10
bbb                         1
bbb                         1
Run Code Online (Sandbox Code Playgroud)

我想生成这样的1个匿名类型:

{
sumAAA= 13 , sumBBB=2  //13=1+2+10....
}
Run Code Online (Sandbox Code Playgroud)

类似的东西:(伪代码)

var obj= dt.AsEnumerable().Select(f=> new { sumAAA =f.sumOfCntOfAaa , sumBBB =f.sumOfCntOfBbb });
Run Code Online (Sandbox Code Playgroud)

任何帮助?

编辑,这会对你有所帮助

   DataTable dt = new DataTable("myTable");
    dt.Columns.Add("cnt", typeof (int));
    dt.Columns.Add("type", typeof (string));
    DataRow row = dt.NewRow();
    row["cnt"] = 1;
    row["type"] = "aaa";
    dt.Rows.Add(row);
    row = dt.NewRow();
    row["cnt"] = 2;
    row["type"] = "aaa";
    dt.Rows.Add(row);
    row = dt.NewRow();
    row["cnt"] = 10;
    row["type"] …
Run Code Online (Sandbox Code Playgroud)

.net c# linq datatable

3
推荐指数
1
解决办法
1494
查看次数

标签 统计

c# ×2

.net ×1

anonymous-types ×1

c#-3.0 ×1

datatable ×1

linq ×1