Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

163
Views
.NET MVC: habilitación de secciones de script para vistas parciales devueltas por AJAX

Me gustaría hacer uso de la sección (secuencia de comandos) en ASP .NET MVC, es decir:

 @section script { <script>alert("hello");</script> }

... pero también con vistas parciales , independientemente de si se usan dentro de una página completa o un contenido devuelto por AJAX.

Parece que MVC espera que devuelva vistas parciales directamente al hacer AJAX, devolviendo PartialViewResult . Pero si hago esto, la vista devuelta no tiene un diseño principal, que es donde se supone que debe estar la instrucción @RenderSection, lo que hace que los scripts declarados en las secciones del script no se representen.

(Por cierto, no se trata de si devolver scripts a través de AJAX es correcto, ese es otro tema)

Para solucionar este problema, pensé en agregar la instrucción @RenderSection en la vista parcial. Pero esto no funcionaría, porque no se garantiza que la vista parcial sea la vista raíz del contenido de retorno, pero también porque haría una llamada duplicada a @RenderSection , si la vista parcial se usara en una página completa.

Entonces, mi segunda solución es usar un diseño "vacío" para cada llamada AJAX que se supone que debe devolver contenido HTML, con solo dos instrucciones en ese diseño: @RenderBody para representar el árbol de vista parcial y @RenderSection para representar todos los scripts declarados en secciones de script dentro de las vistas parciales.

Esta segunda solución parece adaptarse perfectamente a mis necesidades. Sin embargo, parece que esto no está haciendo AJAX de la forma en que MVC espera que lo haga, por lo que me preocupa que esta idea me cause problemas en el futuro que no puedo prever en este día.

¿Te importaría darme tu opinión sobre esto?

Gracias.

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!