Probando Search Bundle – Web Client Software Factory v2.0

Hola, otra vez por aquí.


Yo comentaba de Web Client Software Factory v2.0 y una de sus features. Pero no me contube y lo probre en una sencilla aplicacion con acceso a datos, ya que en el ejemplo lo hacen con un archivo XML. En este ejemplo lo hare con Nortwind pues para probar.


Si ya an usado Web Client Software Factory v2.0 se habran dado cuenta que no funciona para VS 2005, por tanto hay que compilarlo en un VS2008, para que genere el asembly y poder usarlo en nuestra aplicaciones normales desarrollados con VS2008, ya que se lo usan en las desarrolladas con VS2005 generara un error con assembly=«System.Web.Extensions, Version=3.5.0.0, Basicamente es por que en VS2005 usa la version 1.1……. y bueno crear conflictos, este assembly es el encarcado de manejar el entorno AJAX.


Primero hay que vincular el assembly necesario para trabajar.


SF3


SF2 


le indicamos al control de RealTimeSearch que monitore lo que ocurra con el UpdatePanel para hacer los respectivos cambios.

 <asp:TextBox ID=»CompanyNameTextBox» runat=»server»
OnTextChanged=»CompanyNameTextBox_TextChanged»>
 </asp:TextBox><br />

<cc1:RealTimeSearchMonitor ID=»CustomerRealTimeSearchMonitor»
runat=»server» AssociatedUpdatePanelID=»UpdatePanel1″ Interval=»700″>
<ControlsToMonitor>
<cc1:ControlMonitorParameter TargetID=»CompanyNameTextBox»></cc1:ControlMonitorParameter>
</ControlsToMonitor>
</cc1:RealTimeSearchMonitor>
En el evento TextChange del Texbox ejecutamos la siguiente instruccion.
protected void CompanyNameTextBox_TextChanged(object sender, EventArgs e)
{
GridView1.DataSource =

CustomerDataSource.GetCustomers(CompanyNameTextBox.Text);

GridView1.DataBind();

}

y aqui tenemos  lo necesario para la busqueda dentro del campo elejido.
  
public static IDataReader GetCustomers(string prefixText)
{

Database db = DatabaseFactory.CreateDatabase();
string sql = null;
if (string.IsNullOrEmpty(prefixText))
sql = «SELECT CompanyName, ContactName, Address, City FROM Customers»;
else
sql = «SELECT CompanyName, ContactName, Address, City FROM Customers WHERE CompanyName LIKE ‘»
+ prefixText + «%'»;
return db.ExecuteReader(CommandType.Text, sql);

}


Recuerden que para hacer la busqueda el GridView debe contener datos y para llenar el GridView lo deben de hacer por otro metodo que no sea un enlazac a datos ya que generara problemes cuando hagan el GridView1.DataBind();.


les dejo la imagen de como quedaria.


SF$


Codigo

Publicado por

Romny Duarte

Ingeniero de sistemas con experiencia en desarrollo web y móvil, geek, amante de la lectura y de la tecnología.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *