2017-03-09 79 views
0

我有一個文檔上傳系統,用戶可以在其中添加Distributees。這些人有權查看這些文件。我很難將這些共享文件顯示給發行者。 目前它發現用戶已登錄,查找分發者共享(distributees模型將用戶和ID保存到其中),然後使用它搜索包含找到的發行者的文檔(myshared)。根據另一個列表的結果查找列表

但是我得到的錯誤"Operator "==" cannot be applied to the type of int and list"

// GET: DocumentUps 
public ActionResult DocumentsShared() 
{ 
    string currentUser = this.User.Identity.GetUserName(); 

    var myshared = db.Distributees.Where(a => a.UserIdSaved == currentUser).ToList(); 

    var mydocs = db.DocumentUps.Where(a => a.DocumentId == myshared).ToList(); 


    return View(mydocs); 
} 

什麼即時試圖做的是

找到發者的登錄用戶與受發

查找文檔

+0

既然你給我們介紹一下你的表格,數據,並且您已經嘗試了所有我能說的是什麼信息0 - 似乎是一個MySQL的子查詢。祝你好運。 – user3741598

+0

根據錯誤,您試圖將一個整數與一個列表進行比較:'a.DocumentId == myshared'。你不可以做這個。這個不成立 –

回答

0

所有你需要的是一個簡單的連接een distributees和documentUps。

或者是這樣的:

var myshared = db.Distributees.Where(a => a.UserIdSaved == currentUser).Select(x => x.DocId); 

var mydocs = db.DocumentUps.Where(a => myshared.Contains(a.DocumentId)).ToList(); 
相關問題