2016-12-06 44 views
0

我正在開發一個適用於Microsoft Project的vsto插件,並且一切都很順利,直到有一天。 的問題是什麼我的日程安排是非常大的,也許39K任務(系)或更多...我使用lambda表達式來得到我的任務,像這樣簡單的代碼如下工作: var lstTasks = Project.Tasks.Cast<MSProject.Task>().Where(w => !w.Summary).ToList();MSProject VSTO Lambda獲取自定義字段非常緩慢

var lstTasksInesperado = lstTasks.Where(w => w.GetField(App.FieldNameToFieldConstant("Tipo Manutenção")).ToLower().Equals("i")).ToList();

第一,我得到所有我的任務不是彙總,並轉換爲列表。 秒,我得到我的任務,我的CUSTOM FIELD(Pwa CustomField)被稱爲Tipo Manutencao等於「i」,現在是我的問題開始。 這第二個查詢非常非常慢...比如3個也許4個小時。 這個問題開始沒有任何說明......但非常持久。

Obs:我只在某些時間表(mpp)有這個問題,通常是在pwa時。

任何幫助,歡迎。謝謝。

+0

你需要2個列表還是隻有一個?如果是的話,你是否需要加載所有39k記錄? – mybirthname

+0

是的,我需要2個列表,因爲對於每個列表,我需要單獨的過濾器 但是,這不是重點。 是的,我需要加載39k或更多的記錄,因爲我開發一個報告,而這39K的記錄只是我的任務,當不是總結。 這個時間表非常大。 – flvrm92

+0

您提到只有在某些時間表中這是一個問題,如何在不受影響的時間表中運行時間,以及他們有多少任務? –

回答

-1

使用IQueryable界面進行選擇解決問題。