2014-01-23 5 views
0

я пытаюсь искать записи в ASP.Net для этого первого я создать хранимую процедуру:поиск записей через повторителя в 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» в окне поиска

Редактировать после вашего комментария

«как Google» означает, что вы должны запустить селектов каждый раз, когда строка поиска изменений, например, пользователь вводит/удаляет письмо.

Для этого возьмите объект searz и добавьте обработчик к событию «значение изменено».

второй редактировать

Предполагая, что это TextBox, и вы используете VisualStudio, откройте searz «ы свойства и найти TextChanged событие. Двойной щелчок на нем создаст обработчик событий TextChanged, который вы заполнили бы так:

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

Мне нравится искать, как google, когда мы вводим просто 's' или любое другое слово, больше отображаемых и отображаемых записей на странице .. как я делаю, когда я вхожу так же, как и ключевое слово, тогда будут показаны больше записей для например, когда я вхожу в erp, тогда, если в базе данных имеется больше 1 записи, тогда все записи должны отображаться. – user3134694

+0

Обновлен мой ответ после вашего комментария – user270576

+0

, когда я делаю это, он показывает мне ошибку ... protected void Btn_submits_Click (отправитель объекта, EventArgs e) { searz.TextChanged + = новый TextChangedEventHandler (TextChanged); } private void TextChanged (объект Sender, TextChangedEventArgs e) { Repeater4.DataSource = sear.searchdcouments (searz.Text); Repeater4.DataBind(); } – user3134694

Смежные вопросы