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 <[email protected]>escribió:

> 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 <[email protected]>
>
>> 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 
>> <[email protected]>escribió:
>>
>> 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 <[email protected]>
>>>
>>>> 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
>>>> [email protected]
>>>>
>>>>
>>>
>>
>>
>> --
>> Andrés Guzmán
>> 099319111
>> [email protected]
>>
>>
>


-- 
Andrés Guzmán
099319111
[email protected]

Responder a