我有一個收音機列表,我試圖製作一個更加用戶友好的版本。在幕後,所有的描述都是stringIds,所有的零件號都是數據庫ID。比嵌套foreach更好的方法嗎?
現在,我有這樣的代碼:
var z = (from w in wireless
join s in allStrings on w.DescriptionId equals s.StringId
join u in allUids on w.Uid equals u.Uid
where s.LanguageId == 0
select new {w, s, u});
List<RadioProperty> rp = new List<RadioProperty>();
foreach (var x in z)
{
foreach(var y in x.w.RadioToVoltage)
{
rp.Add(new RadioProperty
{
PartNumber = x.u.PartNumber,
Description = x.s.Description,
CurrentType = y.Id.VoltageType,
Voltage = y.Id.VoltageValue,
});
}
}
基本上每個無線電零件號可以有多種電壓選項。 我們可以用無線電ABC與48VAC,110VAC和240VAC選項,所以我試圖創建3個單獨的RadioProperty項目,每個電壓選項一個。
有沒有更好的方法來做到這一點?我正在運行.Net 3.5。
感謝
不管採用哪種方式,在看這段代碼,第一次我比較困惑的非嵌套循環的非描述性變量名稱。 – 2010-02-05 20:50:30
沒錯,不是我常見的命名方案,只是想把一個例子放在一起。 – taylonr 2010-02-05 20:52:57