none
utilizar vistas parciales dentro de otra vista. RRS feed

  • Pregunta

  • tengo la vista de editar  Empleado,  y tiene la vista parcial de index de sede_empleado que me sirve como un detalle de donde a estado el empleado. 

    en el index de sede empleado muestra todo los datos porque asi esta en el controlodar, como hago para pasarle un CUI (numero de identificacin de empleado ) y que el index me carge los datos solo de ese CUI.

    lunes, 2 de octubre de 2017 18:43

Respuestas

Todas las respuestas

  • Si has generado las vistas con los automatismos de Visual Studio a partir del modelo de entidades, fíjate que además de la vista Index te habrá generado (entre otras) una que se llama Details. La vista Details hace precisamente lo que quieres: presenta los datos de un único empleado, identificado por sur su clave primaria (que presumo será eso que has llamado CUI). Basta con que llames a .../Details/numero en lugar de llamar a .../Index, y todo resuelto. Por supuesto, puedes renombrar la vista y su correspondiente método en el controlador si no quieres que se llame Details. Incluso podrías llamarla Index si quisieras(renombrando previamente el Index a otra cosa). Pero si solo quieres que se llame Index para que sea la vista predeterminada, es más sencillo cambiar el default en el mapa de rutas que andar renombrando la vista y los métodos.
    lunes, 2 de octubre de 2017 20:07
  • Si has generado las vistas con los automatismos de Visual Studio a partir del modelo de entidades, fíjate que además de la vista Index te habrá generado (entre otras) una que se llama Details. La vista Details hace precisamente lo que quieres: presenta los datos de un único empleado, identificado por sur su clave primaria (que presumo será eso que has llamado CUI). Basta con que llames a .../Details/numero en lugar de llamar a .../Index, y todo resuelto. Por supuesto, puedes renombrar la vista y su correspondiente método en el controlador si no quieres que se llame Details. Incluso podrías llamarla Index si quisieras(renombrando previamente el Index a otra cosa). Pero si solo quieres que se llame Index para que sea la vista predeterminada, es más sencillo cambiar el default en el mapa de rutas que andar renombrando la vista y los métodos.
    como tu lo dices ya lo probé así el caso es que detaills recibe un parámetro compuesto de dos llaves, por eso es que necesito  pesarla solo el Cui(llave primaria) al index para que me muestre solo los datos de el.
    lunes, 2 de octubre de 2017 20:21
  • el caso es que detaills recibe un parámetro compuesto de dos llaves, por eso es que necesito  pesarla solo el Cui(llave primaria) al index para que me muestre solo los datos de el.

    Mal asunto. Si Details recibe un parámetro compuesto de dos llaves, significa que la clave primaria de la tabla está compuesta por esos dos campos. Eso a su vez implica que uno solo de los campos no es suficiente para identificar el registro deseado. En consecuencia, el Cui no basta para identificar el registro deseado.

    Si tú sabes que sí que basta (porque controlas que nunca entren dos Cui iguales en la base de datos), desde luego puedes editar el método Details en el controlador para que en la Select extraiga las dos claves a partir del Cui (si no sabes hacerlo, cópianos el método aquí y te indicamos el cambio a realizar). Pero indica un mal diseño de la base de datos o de la interfaz de usuario o ambas, sería preferible revisarlo antes de seguir avanzando en el programa cliente.

    martes, 3 de octubre de 2017 6:45
  • hola

    Usarias el @Html.Action() o @Html.Partial()

     @Html.Partial() Vs @Html.Action() - MVC Razor

    en ambos casos puedes pasarle datos como ser

    @Html.Partial("nombrepartial", Model.Cuit)

    pero si necesitas ahcer una busqueda deberias utilizar un Action ya que podrias aplicar logica que luego use la partialview

    @Html.Action("nombreaction", Model.Cuit)

    Html.RenderAction and Html.Action

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta Ronal Monroy martes, 3 de octubre de 2017 15:15
    martes, 3 de octubre de 2017 14:15