Mostrar Store Procedure en una Página Web
Publicado por Víctor E (16 intervenciones) el 30/07/2008 20:22:19
Hola a todos
Quiero hacer funcionar un Store Procedure para que se vea en una página web, esto usando Visual Studio 2005 en la parte de C# en ASP.NET Web
El problema seria que una tabla en SQL con 3 campos:
ContactID
FirstName
LastName
Al ejecutar el store procedure todos los contactos que se apelliden de cierta manera aparecerán en LastName y LO PRIMORDIAL de mi solicitud es COMO CONECTARLO con C# Y MOSTRARLO EN UNA PÁGINA WEB, ESTO ES LO QUE ME INTERESA, EL PASO A SEGUIR EN VISUAL
EL STORE PROCEDURE EN SQL ES EL SIGUIENTE:
---------------------------------------------------------------------------------------------------------------------
CREATE PROCEDURE dbo.GetPeopleByLastName (@LastName NVARCHAR(50))
AS
SELECT ContactID,
FirstName,
LastName
FROM Person.Contact
WHERE LastName = @LastName
ORDER BY ContactID
---------------------------------------------------------------------------------------------------------------------
Si este store procedure dentro de SQL lo corro con:
EXEC dbo.GetPeopleByLastName @LastName = 'Alexander'
realmente solo aparecen los contactos que se apellidan Alexander.
En una página vi que el siguiente código ES EL QUE SE UTILIZA EN C#
-----------------------------------------------------------------------------------------------------------------------------
// Your code should get the connection string from web.config
string connectionString =
@"Server=L40YUKON; Initial Catalog=AdventureWorks; Integrated Security=True;";
using (SqlConnection conn = new SqlConnection(connectionString))
{
using (SqlCommand cmd = new SqlCommand("dbo.GetPeopleByLastName"))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@LastName", "Alexander"));
conn.Open();
cmd.Connection = conn;
using (SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
{
while (rdr.Read())
{
int contactID = rdr.GetInt32(rdr.GetOrdinal("ContactID"));
string firstName = rdr.GetString(rdr.GetOrdinal("FirstName"));
Response.Write(firstName + " (" + contactID.ToString() + ")");
}
rdr.Close();
}
}
}
----------------------------------------------------------------------------------------------------------------------------
Y DE AQUI SALEN VARIOS ASPECTOS QUE PARA LOGRAR MI OBJETIVO SON PRIMORDIALES:
Todo esto lo voy a poner en el web.config de mi proyecto?
En mi interfaz web, que controles deben de ir, textbox? o como seria la interfaz y el código para dicha interfaz.
EL OBJETIVO DE TODO ESTO ES QUE QUIERO RECORDAR COMO ENLAZAR UN STORE PROCEDURE AL VISUAL STUDIO USANDO C#
Saludos y gracias de antemano.
Quiero hacer funcionar un Store Procedure para que se vea en una página web, esto usando Visual Studio 2005 en la parte de C# en ASP.NET Web
El problema seria que una tabla en SQL con 3 campos:
ContactID
FirstName
LastName
Al ejecutar el store procedure todos los contactos que se apelliden de cierta manera aparecerán en LastName y LO PRIMORDIAL de mi solicitud es COMO CONECTARLO con C# Y MOSTRARLO EN UNA PÁGINA WEB, ESTO ES LO QUE ME INTERESA, EL PASO A SEGUIR EN VISUAL
EL STORE PROCEDURE EN SQL ES EL SIGUIENTE:
---------------------------------------------------------------------------------------------------------------------
CREATE PROCEDURE dbo.GetPeopleByLastName (@LastName NVARCHAR(50))
AS
SELECT ContactID,
FirstName,
LastName
FROM Person.Contact
WHERE LastName = @LastName
ORDER BY ContactID
---------------------------------------------------------------------------------------------------------------------
Si este store procedure dentro de SQL lo corro con:
EXEC dbo.GetPeopleByLastName @LastName = 'Alexander'
realmente solo aparecen los contactos que se apellidan Alexander.
En una página vi que el siguiente código ES EL QUE SE UTILIZA EN C#
-----------------------------------------------------------------------------------------------------------------------------
// Your code should get the connection string from web.config
string connectionString =
@"Server=L40YUKON; Initial Catalog=AdventureWorks; Integrated Security=True;";
using (SqlConnection conn = new SqlConnection(connectionString))
{
using (SqlCommand cmd = new SqlCommand("dbo.GetPeopleByLastName"))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@LastName", "Alexander"));
conn.Open();
cmd.Connection = conn;
using (SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
{
while (rdr.Read())
{
int contactID = rdr.GetInt32(rdr.GetOrdinal("ContactID"));
string firstName = rdr.GetString(rdr.GetOrdinal("FirstName"));
Response.Write(firstName + " (" + contactID.ToString() + ")");
}
rdr.Close();
}
}
}
----------------------------------------------------------------------------------------------------------------------------
Y DE AQUI SALEN VARIOS ASPECTOS QUE PARA LOGRAR MI OBJETIVO SON PRIMORDIALES:
Todo esto lo voy a poner en el web.config de mi proyecto?
En mi interfaz web, que controles deben de ir, textbox? o como seria la interfaz y el código para dicha interfaz.
EL OBJETIVO DE TODO ESTO ES QUE QUIERO RECORDAR COMO ENLAZAR UN STORE PROCEDURE AL VISUAL STUDIO USANDO C#
Saludos y gracias de antemano.
Valora esta pregunta


0