2013-05-06 134 views
-3

我不知道爲什麼有錯誤,如果任何人都可以向我說清楚,這將是偉大的。覆蓋方法有無效的參數

public List<ElementModelForCourseIndex> GetElementModelsForCourseIndex(int elementId, int userId, int depthLevel = 2) 
    { 
     List<ElementModelForCourseIndex> TypesName; 
     ElementType type = new ElementType(); 
     using (var db = DataContextManager.AleStoredProcsContext) 
     { 

      TypesName = db.GetElementModelsForCourseIndex<ElementModelForCourseIndex>(elementId, userId, r => new ElementModelForCourseIndex{ 
        Id = ElementsModelsForCourseIndexMap.Id(r), 
        Identity = ElementsModelsForCourseIndexMap.Identity(r) 
       }).OrderBy(n=>n.Identity).ToList(); 
     } 
     foreach (ElementModelForCourseIndex typeContent in TypesName) 
     { 
      typeContent.Children = GetElementChildrenModelsForCourseIndex(elementId, userId, type.ModelId, depthLevel); 
     } 
    } 

    public List<ElementModelForCourseIndex> GetElementChildrenModelsForCourseIndex(int elementId, int userId, ElementType typeId, int depthLevel = 2) 
    { 
     using (var db = DataContextManager.AleStoredProcsContext) 
     { 
      return db.GetElementWithCalendarAndPermsByModel<ElementModelForCourseIndex>(elementId, userId, typeId.Id, r => new ElementModelForCourseIndex 
      { 
       IdentityName = ElementsModelsForCourseIndexMap.IdentityName(r), 
       ValueString = ElementsModelsForCourseIndexMap.ValueString(r), 
       TimeReleased = ElementsModelsForCourseIndexMap.TimeReleased(r), 
       TimeDue = ElementsModelsForCourseIndexMap.TimeReleased(r) 
      }).OrderBy(i => i.IdentityName).ToList(); 
     } 
    } 

錯誤是在頂部方法中,這條線需要返回一條語句。

+2

'type.ModelId'的類型是什麼。該方法期待'ElementType'。 – 2013-05-06 01:59:00

+0

你會得到什麼錯誤? – 2013-05-06 01:59:19

+1

http://stackoverflow.com/questions/16390039/returning-two-sets-of-action-in-one-controller – gunr2171 2013-05-06 02:02:33

回答

1

應該

typeContent.Children = GetElementChildrenModelsForCourseIndex(elementId, 
         userId, type, depthLevel); 

第三個參數是罪魁禍首。這需要ElementType和您提供type.ModelId(我猜是整數)

+0

我認爲他有一個允許4個參數的重載(第二個函數)。 – gunr2171 2013-05-06 02:00:40

+0

@ gunr2171:再次檢查我的答案。 – 2013-05-06 02:00:56

+0

它是一個整數,但是當我把它作爲'type'加下劃線並且說'使用未賦值的變量' – Masriyah 2013-05-06 02:05:11

1

看起來你需要type而不是type.ModelId通 - typeElementType

+0

爲什麼我會下降?我會注意到我沒有複製;我的答案在Nikhil從「該函數只需要3個參數」編輯他的答案之前發佈(與我的答案相匹配 - 我假定他在重新評估問題後得出了同樣的結論)。 – Gjeltema 2013-05-06 02:04:09

+0

不是我...... – Masriyah 2013-05-06 02:05:35

+0

我更新了我的文章 – Masriyah 2013-05-06 02:31:17