除了创建一个新的未命名对象这一事实外,linq 表达式的细节并不重要: select new { ... }因此我没有函数的返回类型。必须有一个通用的无类型类型,比如 Javascript 的“any”。 public ??? Get(int id) { var hisGrade = (from p in ctx.Students where p.StudentID == id select new { area = p.Grade.Section, name = p.Grade.GradeName }).FirstOrDefault(); return hisGrade; }我找到的每个示例都只显示没有封闭函数的代码!
2 回答
守着星空守着你
TA贡献1799条经验 获得超8个赞
您是否假设它始终必须是 Select 调用返回的匿名类型?你错了。
public struct MyType
{
public string Area { get; set; }
public string Name { get; set; }
}
class Class1
{
public MyType Get(int id)
{
var hisGrade = (from p in ctx.Students
where p.StudentID == id
select new MyType{ Area = p.Grade.Section, Name = p.Grade.GradeName }).FirstOrDefault();
return hisGrade;
}
}
- 2 回答
- 0 关注
- 179 浏览
添加回答
举报
0/150
提交
取消