2014-01-23 110 views
0

我嘗試搜索asp.net中記錄了這首,我創建存儲過程:搜索記錄

ALTER procedure [dbo].[spsearchdocuments] 
    @Name nvarchar(50) 
as 
    SELECT  
     dbo.DocumentInfo.DocID as DocumentID, 
     dbo.DocumentInfo.DocName as DocumentName, 
     dbo.DocumentInfo.Uploadfile as FileUploaded, 
     dbo.DocumentInfo.UploadedDate as UploadedDate, 
     dbo.Department.DepType as Department, 
     dbo.DocType.DocType as Document, 
     dbo.DocumentInfo.UploadedBy as UploadedBy, 
     dbo.Approval.AppoveBy, dbo.ApproveType.ApproveType as Status 
    FROM   
     dbo.DocumentInfo 
    INNER JOIN 
     dbo.Approval ON dbo.DocumentInfo.DocID = dbo.Approval.DocID 
    INNER JOIN 
     dbo.ApproveType ON dbo.Approval.ApproveID = dbo.ApproveType.ApproveID 
    INNER JOIN 
     dbo.Department ON dbo.DocumentInfo.DepID = dbo.Department.DepID 
    INNER JOIN 
     dbo.DocType ON dbo.DocumentInfo.DocTypeID = dbo.DocType.DocTypeID 
    WHERE 
     [DocName] like @Name+'%' 

,然後當我把這個過程中的功能,這樣

public DataTable searchdcouments(string Name) 
{ 
    return db.ExecuteDataSet("spsearchdocuments", new object[] { Name }).Tables[0]; 
} 

,當我撥打的.aspx形式此功能的背後是這樣

protected void Btn_submits_Click(object sender, EventArgs e) 
{   
    Repeater4.DataSource = sear.searchdcouments(searz.Text); 
    Repeater4.DataBind();   
} 

搜索按鈕,當我調試米Ÿ項目並寫入關鍵字,然後它不告訴我在哪裏記錄在數據庫中存在的任何記錄

看看下面的圖片

當我輸入關鍵字

keyword

看看,當我點擊搜索按鈕它讓我這樣

show no records.

+0

我會檢查searz.Text以確保它沒有尾隨空格。 –

+0

plz檢查這

user3134694

回答

1

看起來升如果你忘記了你的關鍵字。它的「ERP系統」的數據庫,以及「erpssystem」在搜索框中輸入您的評論後

編輯

「像谷歌」的意思,你必須運行你的選擇每次搜索字符串的變化,例如用戶鍵入/刪除一個字母。

要做到這一點,請將您的searz對象添加到它的「值已更改」事件的處理程序中。

第二編輯

假設這是一個文本框和您正在使用VisualStudio的,開放searz的屬性,找到TextChanged事件。雙擊它將創建TextChanged事件處理程序,你會這樣填寫:

protected void searz_TextChanged(object sender, EventArgs e) 
{ 
    Repeater4.DataSource = sear.searchdcouments(searz.Text); 
    Repeater4.DataBind(); 
} 
+0

我喜歡搜索像谷歌時,我們只輸入's'或任何其他單詞顯示更多的記錄,並顯示在頁面..同樣,當我輸入相同的關鍵字,然後更多的記錄將顯示例如當我輸入erp然後如果更多的1記錄存在數據庫中,那麼應該顯示所有記錄 – user3134694

+0

更新我的回答後,您的意見 – user270576

+0

當我這樣做,它顯示我錯誤...保護無效Btn_submits_Click(對象發件人,EventArgs e) searz.TextChanged + = new TextChangedEventHandler(TextChanged); } private void TextChanged(object Sender,TextChangedEventArgs e) Repeater4.DataSource = sear.searchdcouments(searz.Text); Repeater4.DataBind(); } – user3134694