我有文檔類:如何在LINQ族元素得到結果,如Facebook的消息
public class Document
{
public int FromCompanyId { get; set; }
public int ToCompanyId { get; set; }
public string DocumentText { get; set; }
}
當任何公司發送文件給別人,我救了他們的Id
的。不久,我有很多對ID的的:
1, 2 // Company which has Id=1 sent document to Company which has Id=2.
1, 3 // Company which has Id=1 sent document to Company which has Id=3.
4, 3 // Company which has Id=4 sent document to Company which has Id=3 etc.
2, 1
4, 3
4, 5
5, 4
5, 5
4, 5
3, 1
我想使公司的任何管理只有自己的文件。已發送和已收到。我如何通過公司ID獲取文檔?或者任何人都可以提出另一個建議。
所以,當id = ToCompanyId
(任何公司發送文件到本公司),我想按FromCompanyId
當id = FromCompanyId
(本公司發送文件到其他公司)通過我想ToCompanyId
到組。
這看起來像Facebook消息。當我通過我的消息時,我看到我的所有對話由其他用戶的ID。在我的申請中,我希望通過其他公司的ID查看文檔。
這隻適用於id = FromCompanyId
。
GetDocumentsByCompanyId(int Id)
{
...
var myDocs= MyDatabaseContext.Documents.Where(e => e.FromCompanyId == Id|| e.ToCompanyId == Id);
var docGroups = from m in myDocs
group m by m.ToCompanyId
into g select new { ToCompanyIdKey = g.Key, betweenDocs = g };
...
}
對不起,對英文不好。
爲什麼不使用2個查詢;一個獲取收到的文件和另一個獲取發送的文件?你打算在一個列表中顯示所有發送和接收的文件嗎? – daryal
是的,我想顯示像Facebook消息文件。當點擊其他公司的名字時,在文件之間顯示。爲此,我想收集所有文件並將其發送到查看 –