2014-01-29 74 views
0

我使用LINQ to SQL和我Datatable(tbl_final_aut)似乎表包含特定的值或者不

enter image description here

,我改變了我的appliaction一個SELECT查詢作爲

的.cs代碼

var sel = db.selectdoc(24).ToList(); 

if (sel.Count == 3) 
{ 
    //all doc are uploaded 
} 
else 
{ 
    // 
} 

看起來我的Datatable,我們可以看到我會去if condition,但我想,如果我的sel.count=2sel.count=1比我想說明,這組名稱或類型不存在在我的DataTable

For example :

如果我的數據表似乎是 enter image description here

,所以我的狀態會去別的那裏,我想我的警告框,其他2組名不存在像

var sel = db.selectdoc(24).ToList(); 

if (sel.Count == 3) 
{ 
    //all doc are uploaded 
} 
else 
{ 
    //I want in alert that "cover letter and CopyrightTra.. is not present" 
} 

存儲過程的代碼

ALTER PROCEDURE dbo.selectdoc 
@art_aut_id int 
AS 
select * from tbl_final_aut where [email protected]_aut_id 
RETURN 

正如你看到的其實我只有3 types正如你在我1st datatable1,3,4 ..我只是想知道,如果任何一種類型的說是3rd type is not存在或存在於見到表比我sel.count=2所以它會在else condition那裏,我不得不作出一些代碼,說type 3 or coverletter is required to be upload。什麼代碼,我應當在那邊

錯誤 enter image description here

數據類型 enter image description here

+0

什麼是'selectdoc'是您的存儲過程? –

+0

@SergeyBerezovskiy請參閱我編輯的問題 –

+0

您如何知道數據庫表中應顯示哪些組值? –

回答

0
string[] groupNames = { "Main Article", "Cover Letter" }; // list all groups 

var missingGroups = 
    groupNames.Except(db.selectdoc(24).Select(d => d.groupname).Distinct()); 

您也可以從數據庫中的所有組名稱,而不硬編碼它們的代碼:

string[] groupNames = db.tablename.Select(d => d.groupname).Distinct().ToArray(); 
+0

我如何使顯示在標籤或警報中的遺漏組? –

+0

我很抱歉,但如果你把groupName形式的表格作爲告訴,然後在失蹤的組中,你會發現什麼?沒有.. !!所以你必須從另一個表或硬編碼中取得groupName。 –

+0

你可以使用** foreach循環爲missingGroup **來顯示消息 –