[問題] 有沒有辦法在linq查詢語句裡做一些事情

作者: bantime (景)   2015-10-27 14:54:41
(from tar in aPlayerData.m_QuestDatas.Values
let questXml = _QUEST_.GetData(tar.uXID)
from data in RefreshQuestDatas
where questXml.AccomplishType == data.m_eUpdateType
let r = tar.Clone()
select r).ToArray();
我想select r
可是在select以前我想對r裡面有個參數nTarNum1加上data裡的參數m_nUpdateNum
目前有兩個方式
可是感覺都很蠢
第一個方式是寫一個delgate
然後在select的時候把r跟m_nUpdateNum當參數丟進去處理再回傳r
第二個方式是利用傳址的特性宣告一個無用的r1 然後後面對r做事情
(from tar in aPlayerData.m_QuestDatas.Values
let questXml = _QUEST_.GetData(tar.uXID)
from data in RefreshQuestDatas
where questXml.AccomplishType == data.m_eUpdateType
let r = tar.Clone()
let r1 = r.nTarNum1 += data.m_nUpdateNum
select r).ToArray();
想請問有沒有其他方式可以讓我在查詢語句中處理一些事情呢?

Links booklink

Contact Us: admin [ a t ] ucptt.com