[puntonet] Re: [puntonet] MVC Vista - Controlador Envió datos
Andres, A mi personalmente me gusta pasar el objeto. Obviamente no siempre hace falta, pero en el caso de un ABM, es mas facil y rapido para trabajar. Saludos. 2011/3/9 Andres Guzman andres.guzman...@gmail.com Estimados: Buenas tardes, acudo a Uds. por mi inexperiencia en MVC 2, y necesito saber si alguien me la puede aclarar. Lo que sucede es que no se cual sera la mejor forma de pasar los datos desde la vista al controlador cuando se realize un submit. - si pasar el modelo (public ActionResult Crear(Usuario objUsuario)) - si pasar cada dato por separado (public ActionResult Crear(string nombre, string aPatero, string mail)) y yo despues en mi capa negocio crear el objeto con los diferentes datos - o pasar una Colleccion con los datos del formulario (public ActionResult Crear(FormCollection formColl)) y yo despues en mi capa negocio crear el objeto con los diferentes datos Desde ya cualquier ayuda se agradece. -- Andrés Guzmán 099319111 andres.guzman...@gmail.com
[puntonet] Re: [puntonet] MVC Vista - Controlador Envió datos
Andres, A mi personalmente me gusta pasar el objeto. Obviamente no siempre hace falta, pero en el caso de un ABM, es mas facil y rapido para trabajar. Saludos. 2011/3/9 Andres Guzman andres.guzman...@gmail.com Estimados: Buenas tardes, acudo a Uds. por mi inexperiencia en MVC 2, y necesito saber si alguien me la puede aclarar. Lo que sucede es que no se cual sera la mejor forma de pasar los datos desde la vista al controlador cuando se realize un submit. - si pasar el modelo (public ActionResult Crear(Usuario objUsuario)) - si pasar cada dato por separado (public ActionResult Crear(string nombre, string aPatero, string mail)) y yo despues en mi capa negocio crear el objeto con los diferentes datos - o pasar una Colleccion con los datos del formulario (public ActionResult Crear(FormCollection formColl)) y yo despues en mi capa negocio crear el objeto con los diferentes datos Desde ya cualquier ayuda se agradece. -- Andrés Guzmán 099319111 andres.guzman...@gmail.com
[puntonet] Re: [puntonet] Re: [puntonet] MVC Vista - Controlador Envió datos
Pero no existe alguna buena practica que te indique cual utilizar, o simplemente no hay diferencia en cada una de ellas y la decisión de cual utilizar queda a cargo del programador. El 9 de marzo de 2011 09:08, Leandro Halfon leandrohal...@gmail.comescribió: Andres, A mi personalmente me gusta pasar el objeto. Obviamente no siempre hace falta, pero en el caso de un ABM, es mas facil y rapido para trabajar. Saludos. 2011/3/9 Andres Guzman andres.guzman...@gmail.com Estimados: Buenas tardes, acudo a Uds. por mi inexperiencia en MVC 2, y necesito saber si alguien me la puede aclarar. Lo que sucede es que no se cual sera la mejor forma de pasar los datos desde la vista al controlador cuando se realize un submit. - si pasar el modelo (public ActionResult Crear(Usuario objUsuario)) - si pasar cada dato por separado (public ActionResult Crear(string nombre, string aPatero, string mail)) y yo despues en mi capa negocio crear el objeto con los diferentes datos - o pasar una Colleccion con los datos del formulario (public ActionResult Crear(FormCollection formColl)) y yo despues en mi capa negocio crear el objeto con los diferentes datos Desde ya cualquier ayuda se agradece. -- Andrés Guzmán 099319111 andres.guzman...@gmail.com -- Andrés Guzmán 099319111 andres.guzman...@gmail.com
[puntonet] Re: [puntonet] Re: [puntonet] Re: [puntonet] MVC Vista - Controlador Envió datos
Lo que dice Leandro es correcto, pero, tal como sospechas, hay variantes y motivos. En primer lugar, cuando recibis el objeto completo, hay que tener cuidado con la injeccion de propiedades. Esto es, que un chico malo te agregue en el post datos para propiedades qeu vos no queres modificar. Busca informacion sobre los IncludedProperties y ExcludedProperties. Si necesitas mas informacion sobre esto avisanos. Segundo, el binder que completa el objeto crea una nueva instancia, esto puede no ser lo adecuado en una modificacion. Yo utilizo un repositorio para recuperar el objeto y luego la FormCollection o el metodo UpdateModel del Controller. Abrazo -- Carlos Peix 2011/3/9 Andres Guzman andres.guzman...@gmail.com Pero no existe alguna buena practica que te indique cual utilizar, o simplemente no hay diferencia en cada una de ellas y la decisión de cual utilizar queda a cargo del programador. El 9 de marzo de 2011 09:08, Leandro Halfon leandrohal...@gmail.comescribió: Andres, A mi personalmente me gusta pasar el objeto. Obviamente no siempre hace falta, pero en el caso de un ABM, es mas facil y rapido para trabajar. Saludos. 2011/3/9 Andres Guzman andres.guzman...@gmail.com Estimados: Buenas tardes, acudo a Uds. por mi inexperiencia en MVC 2, y necesito saber si alguien me la puede aclarar. Lo que sucede es que no se cual sera la mejor forma de pasar los datos desde la vista al controlador cuando se realize un submit. - si pasar el modelo (public ActionResult Crear(Usuario objUsuario)) - si pasar cada dato por separado (public ActionResult Crear(string nombre, string aPatero, string mail)) y yo despues en mi capa negocio crear el objeto con los diferentes datos - o pasar una Colleccion con los datos del formulario (public ActionResult Crear(FormCollection formColl)) y yo despues en mi capa negocio crear el objeto con los diferentes datos Desde ya cualquier ayuda se agradece. -- Andrés Guzmán 099319111 andres.guzman...@gmail.com -- Andrés Guzmán 099319111 andres.guzman...@gmail.com
[puntonet] Re: [puntonet] Re: [puntonet] Re: [puntonet] Re: [puntonet] MVC Vista - Controlador Envió datos
Tal como dices, encontre información al respecto en la cual dicen que una forma fácil es recibir el objeto completo pero existe el riesgo de la inyeccion de propiedades y la otra es utilizar el formcollection o el método UpdateModel que tendre que averiguar en que consiste este UpdateModel o cual es su funcion. Pero creo que por lo poco que eh estudiado el tema me parece que lo mejor aunque menos eficiente es utilizar algo como esto tanto para cuando quiera modificar o crear algun registro public ActionResult Crear(FormCollection formColl) { string a = formColl[a].ToString(); string b = formColl[b].ToString(); string c = formColl[c].ToString(); MICAPADENEGOCIO.Crear(a, b, c); return View() } O el updatemodel, con esto me evito el riesgo de injeccion de propiedades Estare en lo correcto. Grx El 9 de marzo de 2011 10:31, Carlos Peix peix-lis...@praxia.com.arescribió: Lo que dice Leandro es correcto, pero, tal como sospechas, hay variantes y motivos. En primer lugar, cuando recibis el objeto completo, hay que tener cuidado con la injeccion de propiedades. Esto es, que un chico malo te agregue en el post datos para propiedades qeu vos no queres modificar. Busca informacion sobre los IncludedProperties y ExcludedProperties. Si necesitas mas informacion sobre esto avisanos. Segundo, el binder que completa el objeto crea una nueva instancia, esto puede no ser lo adecuado en una modificacion. Yo utilizo un repositorio para recuperar el objeto y luego la FormCollection o el metodo UpdateModel del Controller. Abrazo -- Carlos Peix 2011/3/9 Andres Guzman andres.guzman...@gmail.com Pero no existe alguna buena practica que te indique cual utilizar, o simplemente no hay diferencia en cada una de ellas y la decisión de cual utilizar queda a cargo del programador. El 9 de marzo de 2011 09:08, Leandro Halfon leandrohal...@gmail.comescribió: Andres, A mi personalmente me gusta pasar el objeto. Obviamente no siempre hace falta, pero en el caso de un ABM, es mas facil y rapido para trabajar. Saludos. 2011/3/9 Andres Guzman andres.guzman...@gmail.com Estimados: Buenas tardes, acudo a Uds. por mi inexperiencia en MVC 2, y necesito saber si alguien me la puede aclarar. Lo que sucede es que no se cual sera la mejor forma de pasar los datos desde la vista al controlador cuando se realize un submit. - si pasar el modelo (public ActionResult Crear(Usuario objUsuario)) - si pasar cada dato por separado (public ActionResult Crear(string nombre, string aPatero, string mail)) y yo despues en mi capa negocio crear el objeto con los diferentes datos - o pasar una Colleccion con los datos del formulario (public ActionResult Crear(FormCollection formColl)) y yo despues en mi capa negocio crear el objeto con los diferentes datos Desde ya cualquier ayuda se agradece. -- Andrés Guzmán 099319111 andres.guzman...@gmail.com -- Andrés Guzmán 099319111 andres.guzman...@gmail.com -- Andrés Guzmán 099319111 andres.guzman...@gmail.com
[puntonet] Re: [puntonet] Re: [puntonet] Re: [puntonet] Re: [puntonet] Re: [puntonet] MVC Vista - Controlador Envió datos
El update model es igualmente vulnerable a la inyeccion de propiedades. Tenes que utilizar IncludedProperties y ExcludedProperties. Otra opcion es utilizar ViewModels que solo incluyan los campos capturados en esa pantalla. -- Carlos Peix 2011/3/9 Andres Guzman andres.guzman...@gmail.com Tal como dices, encontre información al respecto en la cual dicen que una forma fácil es recibir el objeto completo pero existe el riesgo de la inyeccion de propiedades y la otra es utilizar el formcollection o el método UpdateModel que tendre que averiguar en que consiste este UpdateModel o cual es su funcion. Pero creo que por lo poco que eh estudiado el tema me parece que lo mejor aunque menos eficiente es utilizar algo como esto tanto para cuando quiera modificar o crear algun registro public ActionResult Crear(FormCollection formColl) { string a = formColl[a].ToString(); string b = formColl[b].ToString(); string c = formColl[c].ToString(); MICAPADENEGOCIO.Crear(a, b, c); return View() } O el updatemodel, con esto me evito el riesgo de injeccion de propiedades Estare en lo correcto. Grx El 9 de marzo de 2011 10:31, Carlos Peix peix-lis...@praxia.com.arescribió: Lo que dice Leandro es correcto, pero, tal como sospechas, hay variantes y motivos. En primer lugar, cuando recibis el objeto completo, hay que tener cuidado con la injeccion de propiedades. Esto es, que un chico malo te agregue en el post datos para propiedades qeu vos no queres modificar. Busca informacion sobre los IncludedProperties y ExcludedProperties. Si necesitas mas informacion sobre esto avisanos. Segundo, el binder que completa el objeto crea una nueva instancia, esto puede no ser lo adecuado en una modificacion. Yo utilizo un repositorio para recuperar el objeto y luego la FormCollection o el metodo UpdateModel del Controller. Abrazo -- Carlos Peix 2011/3/9 Andres Guzman andres.guzman...@gmail.com Pero no existe alguna buena practica que te indique cual utilizar, o simplemente no hay diferencia en cada una de ellas y la decisión de cual utilizar queda a cargo del programador. El 9 de marzo de 2011 09:08, Leandro Halfon leandrohal...@gmail.comescribió: Andres, A mi personalmente me gusta pasar el objeto. Obviamente no siempre hace falta, pero en el caso de un ABM, es mas facil y rapido para trabajar. Saludos. 2011/3/9 Andres Guzman andres.guzman...@gmail.com Estimados: Buenas tardes, acudo a Uds. por mi inexperiencia en MVC 2, y necesito saber si alguien me la puede aclarar. Lo que sucede es que no se cual sera la mejor forma de pasar los datos desde la vista al controlador cuando se realize un submit. - si pasar el modelo (public ActionResult Crear(Usuario objUsuario)) - si pasar cada dato por separado (public ActionResult Crear(string nombre, string aPatero, string mail)) y yo despues en mi capa negocio crear el objeto con los diferentes datos - o pasar una Colleccion con los datos del formulario (public ActionResult Crear(FormCollection formColl)) y yo despues en mi capa negocio crear el objeto con los diferentes datos Desde ya cualquier ayuda se agradece. -- Andrés Guzmán 099319111 andres.guzman...@gmail.com -- Andrés Guzmán 099319111 andres.guzman...@gmail.com -- Andrés Guzmán 099319111 andres.guzman...@gmail.com
[puntonet] Re: [puntonet] Re: [puntonet] Re: [puntonet] Re: [puntonet] Re: [puntonet] Re: [puntonet] MVC Vista - Controlador Envió datos
Muchas Gracias por la ayuda... ahora se me aclaró bastante el panorama. El 9 de marzo de 2011 11:32, Carlos Peix peix-lis...@praxia.com.arescribió: El update model es igualmente vulnerable a la inyeccion de propiedades. Tenes que utilizar IncludedProperties y ExcludedProperties. Otra opcion es utilizar ViewModels que solo incluyan los campos capturados en esa pantalla. -- Carlos Peix 2011/3/9 Andres Guzman andres.guzman...@gmail.com Tal como dices, encontre información al respecto en la cual dicen que una forma fácil es recibir el objeto completo pero existe el riesgo de la inyeccion de propiedades y la otra es utilizar el formcollection o el método UpdateModel que tendre que averiguar en que consiste este UpdateModel o cual es su funcion. Pero creo que por lo poco que eh estudiado el tema me parece que lo mejor aunque menos eficiente es utilizar algo como esto tanto para cuando quiera modificar o crear algun registro public ActionResult Crear(FormCollection formColl) { string a = formColl[a].ToString(); string b = formColl[b].ToString(); string c = formColl[c].ToString(); MICAPADENEGOCIO.Crear(a, b, c); return View() } O el updatemodel, con esto me evito el riesgo de injeccion de propiedades Estare en lo correcto. Grx El 9 de marzo de 2011 10:31, Carlos Peix peix-lis...@praxia.com.arescribió: Lo que dice Leandro es correcto, pero, tal como sospechas, hay variantes y motivos. En primer lugar, cuando recibis el objeto completo, hay que tener cuidado con la injeccion de propiedades. Esto es, que un chico malo te agregue en el post datos para propiedades qeu vos no queres modificar. Busca informacion sobre los IncludedProperties y ExcludedProperties. Si necesitas mas informacion sobre esto avisanos. Segundo, el binder que completa el objeto crea una nueva instancia, esto puede no ser lo adecuado en una modificacion. Yo utilizo un repositorio para recuperar el objeto y luego la FormCollection o el metodo UpdateModel del Controller. Abrazo -- Carlos Peix 2011/3/9 Andres Guzman andres.guzman...@gmail.com Pero no existe alguna buena practica que te indique cual utilizar, o simplemente no hay diferencia en cada una de ellas y la decisión de cual utilizar queda a cargo del programador. El 9 de marzo de 2011 09:08, Leandro Halfon leandrohal...@gmail.comescribió: Andres, A mi personalmente me gusta pasar el objeto. Obviamente no siempre hace falta, pero en el caso de un ABM, es mas facil y rapido para trabajar. Saludos. 2011/3/9 Andres Guzman andres.guzman...@gmail.com Estimados: Buenas tardes, acudo a Uds. por mi inexperiencia en MVC 2, y necesito saber si alguien me la puede aclarar. Lo que sucede es que no se cual sera la mejor forma de pasar los datos desde la vista al controlador cuando se realize un submit. - si pasar el modelo (public ActionResult Crear(Usuario objUsuario)) - si pasar cada dato por separado (public ActionResult Crear(string nombre, string aPatero, string mail)) y yo despues en mi capa negocio crear el objeto con los diferentes datos - o pasar una Colleccion con los datos del formulario (public ActionResult Crear(FormCollection formColl)) y yo despues en mi capa negocio crear el objeto con los diferentes datos Desde ya cualquier ayuda se agradece. -- Andrés Guzmán 099319111 andres.guzman...@gmail.com -- Andrés Guzmán 099319111 andres.guzman...@gmail.com -- Andrés Guzmán 099319111 andres.guzman...@gmail.com -- Andrés Guzmán 099319111 andres.guzman...@gmail.com