Ho bisogno di leggere le app di web.config nel metodo del controller MVC e di passarle per visualizzare e accedere alle impostazioni nel controller e nel servizio angularjs. Sto pensando di scorrere le app e preparare un dizionario con coppie chiave/valore e passare un oggetto modello alla mia vista. Ma come posso accedervi da nessuna parte nell'applicazione angolare?Come leggere le impostazioni web.config nel metodo del controller MVC e accedervi in vista angularjs, controller e servizio?
risposta
Il mio modo di fare questo genere di cose è praticamente solo come lei suggerisce (utilizzando JSON.net e Razor):
- preparo un dizionario o un oggetto grafico con i dati che voglio mettere a disposizione.
- Passare i dati come parte di ViewModel dal controller alla vista
- Serializzare i dati ViewModel, immettendoli nel modello
cshtml
come variabile JavaScript globale. Devo usare il seguente trucco per arrivare a questo lavoro:
<script>
var AppSettings = (function(o) {
return o;
})(@Html.Raw(JsonConvert.SerializeObject(Model.AppSettings)));
</script>
- Creare un servizio angolare che legge (e copie) la variabile globale JavaScript.
- I client dei dati accedono tramite il servizio angolare.
Il servizio è solo un involucro sottile, sebbene a volte contenga metodi logici e di accesso. Il valore qui è che si sta solo accedendo alla variabile globale (una pratica 'sporca' nel mondo angolare) da un solo punto nel codice. "Incapsula le cose brutte!"
Nota: questo richiede che l'app angolare venga pubblicata dal sito Web MVC tramite un modello cshtml
.
Il vantaggio di questo approccio rispetto a effettuare una chiamata AJAX è che i dati di interesse sono disponibili quando l'app angolare è sottoposta a bootstrapping ... i dati sono accessibili tramite il servizio in modo sincrono. Questo semplifica l'accesso ai dati. Se l'asincronia è OK, suggerirei di effettuare una chiamata AJAX dal servizio, memorizzare il risultato nella cache e restituire una promessa. Con l'approccio AJAX non esiste alcun accoppiamento tra il modello angolare e il progetto MVC, consentendo di servire il modello angolare come un semplice file html.
se non si utilizza la vista asp.net mvc, è possibile inviare una richiesta ajax per ottenere la configurazione di fine server, la configurazione di fine del server per questa richiesta ajax.
- 1. Acquisizione del nome del controller e del metodo di azione nella vista in ASP.Net MVC
- 2. Leggere HttpContent nel controller WebApi
- 3. Come evitare l'accoppiamento della vista e del controller in Swing
- 4. Inject $ log in ogni controller e servizio
- 5. AngularJS: come passare valori dal metodo Controller a servizio?
- 6. AngularJS, $ http.get() e "controller as"
- 7. AngularJS - convertire le date nel controller
- 8. AngularJS: ng-include e ng-controller
- 9. Come accedere al controller mvc nel controller web api per ottenere il pdf dalla vista
- 10. Come leggere il valore di sistema da web.config e utilizzarlo nel metodo ASP.NET MVC C#
- 11. Controller 'AngularJS' come 'e form. $ Valido
- 12. Utilizzo di servizi e DAO nel controller mvc di primavera
- 13. AngularJS Render Controller e Template
- 14. MVC - Comunicazione livello controller a servizio
- 15. Combinazione di chiamate controller controller e chiamate controller nello stesso controller MVC 6
- 16. Spring MVC @Controller e profili
- 17. Controller MVC IoC e ASP.NET
- 18. ExtJS 4 come creare e visualizzare un nuovo controller/vista da un altro controller/vista?
- 19. MVC 4 Parziale con controller e vista separati
- 20. AngularJS: passando params dal controller al servizio
- 21. Passare le date dalla vista al controller mvc/C#
- 22. Direttiva AngularJs con controller dinamico e modello
- 23. MVC: devo utilizzare Controller nella vista?
- 24. Spring MVC Metodo @ExceptionHandler nel controller mai richiamato
- 25. caricamento dinamico del controller in angularjs $ routeProvider
- 26. AngularJS - Direttiva CRUD/schemi di servizio/controller
- 27. Come posso spostare le richieste HTTP da un controller AngularJS e in un servizio?
- 28. Dichiarazione controller in AngularJS
- 29. AngularJS: leggere il parametro del percorso dal controller
- 30. AngularJS. Come chiamare la funzione controller dall'esterno del componente controller
Forse questo può aiutarti - http://stackoverflow.com/questions/1197101/best-practices-for-passing-data-from-asp-net-mvc-to-javascript –