我想知道这段代码是不是很糟糕。
..
var StoresInData = (from s in MainData
orderby s.LocationCode
select new
{
s.LocationCode,
s.LocationShortName,
s.LocationName
}).Distinct().ToList();
..
foreach (var store in StoresInData)
{
CreateReportForStore(store);
..
..
}
并在CreateReportForStore函数中:
private void CreateReportForStore(dynamic store)
{
var a = store.LocationCode;
Console.WriteLine(a);
..
..
}
在这种情况下,使用动态是一种不好的做法来传递匿名对象吗?
由于
答案 0 :(得分:3)
如果你需要传递它,使用类型化的类是个好主意。使代码更具可读性和可维护性。它也使它不容易出错。
答案 1 :(得分:0)
通常,我使用dynamic的唯一内容是从API返回对象属性的子集。如果它在后端传递,那么我会为它创建一个对象。