Pregunta

Soy nuevo en .NET, y parece que no puedo encontrar algo que debería ser simple. Quiero insertar una fila en una tabla e inicializarla con valores que no estén vinculados a los controles de datos. Específicamente, tengo un control CreateUserWizard en una página. En el método CreatedUser, quiero insertar una fila en una base de datos que creé llamada "usuarios" " que contiene el nombre de usuario y la dirección de correo electrónico del control CreateUserWizard, y la fecha en que se creó el nuevo usuario, de la función DateTime.Now. No parece haber una forma de establecer los Parámetros en el control sqlDataSource de manera que puedan acceder a los datos que no están vinculados a los controles de datos. ¿Alguien puede explicarme una manera de hacer esto?

¿Fue útil?

Solución

Está en el camino equivocado, no utilizará el control sqlDataSource. Irás a una interacción más directa con la base de datos desde el código. Por ejemplo:

SqlConnection conn = new SqlConnection(connString);
SqlCommand cmnd = new SqlCommand("Insert Into Table (P1, P2) Values (@P1, @P2)", conn);
cmnd.Parameters.AddWithValue("@P1", P1Value);
cmnd.Parameters.AddWithValue("@P2", P2Value);
cmnd.ExecuteNonQuery();
conn.Close();

Ahora, con todo lo dicho, querrá aprender SqlCommand y SqlDataReader con cierto detalle (son bastante sencillos) y luego centrar su atención en crear una capa de acceso a datos que tenga sentido para usted. Te alegrarás de haberlo hecho.

Otros consejos

Otra opción es configurar los valores predeterminados en la base de datos, para que no tengas que preocuparte por pasar Datetime.now.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top