2013-05-14 118 views
2

我可以用編程方式(C#)成功創建輪廓條目,但我無法使用記錄ID更新創建的記錄。在挖掘我的頭後無法找到爲什麼下面的代碼不起作用的原因。這是非常基本的,所有我想要做的是獲得輪廓中存在的記錄。使用記錄ID更新等高線形式(記錄)

RecordStorage recordStorage = new RecordStorage(); 
Record r = recordStorage.GetRecord(new Guid("15d654cb-a7c6-4f1f-8b55-0ecd7d19b0e3")); 
recordStorage.Dispose(); 

剛開始與更新的過程中,我試圖讓記錄對象使用它的ID,但由於它拋出一個奇怪的錯誤「具有相同鍵的項已被添加無法繼續進行。「當我調用」storage.GetRecord()「時試圖設置值時,我無法理解。以下是堆棧跟蹤

**An item with the same key has already been added.** 
    at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add) 
    at Umbraco.Forms.Data.Storage.RecordFieldStorage.GetAllRecordFields(Record record) 
    at Umbraco.Forms.Data.Storage.RecordStorage.GetRecord(Object id) 
    at MauriceBlackburn.Service.ContourFormService.InsertRecord(ContourFormFields unionContourForm) 

有什麼想法,有我錯過了一些東西,我一直在周圍挖了一整天,仍然沒有能夠想出解決辦法。提前致謝。

備受讚賞。

+0

這可能是一個要問我們的.umbraco.org – BeaverProj 2013-05-15 21:46:38

回答

0

首先,嘗試刪除工作流並重新添加它。

您還可以創建兩個簡單的工作流程,一個將寫入記錄,另一個對其進行操作(在寫入時使用該ID)。

+0

嗨@madebybear,謝謝你的回覆。對不起,我有點困惑,我如何使用工作流程編輯記錄。我正在做所有事情,例如插入記錄並更新它。表單字段實際上來自移動應用程序。 有沒有其他辦法可以達到這個目的? – Aneesh 2013-05-14 23:09:34

0

確保在數據庫中沒有具有相同ID的記錄。您可能在之前插入了它們。