Articles of asp.net web api

Come rilevare chiavi duplicate in Web Api Invia richiesta Json

Ho un requisito per restituire un errore 400 da una richiesta Post API Web ASP.NET quando la richiesta Json contiene chiavi duplicate. Ad esempio se la richiesta è stata { “key1”: “value1”, “key2”: 1000, “key2”: 2000, “key3”: “value3″ } quindi vorrei che l’errore venisse generato a causa della presenza di due chiavi “key2”. Il mio […]

Come utilizzare lo stile di vita PerWebRequest di Castle Windsor con OWIN

Sto convertendo un progetto ASP .Net Web API 2 esistente per utilizzare OWIN. Il progetto utilizza Castle Windsor come framework di iniezione delle dipendenze con una delle dipendenze impostate per utilizzare lo stile di vita PerWebRequest. Quando faccio una richiesta al server ottengo un’eccezione Castle.MicroKernel.ComponentResolutionException . L’eccezione consiglia di aggiungere quanto segue alle sezioni system.web/httpModules […]

Tutti i metodi Entity Framework dovrebbero usare async?

È buona prassi, in Asp.Net MVC o Asp.Net Web API, disporre di tutte le azioni del controllore che interrogano il database (anche la query più semplice) per utilizzare il modello async / await? So che usare async / await aggiunge complessità, ma aggiungerlo vale la pena? Anche per la domanda più semplice?

Routing e gestori di messaggi: richiesta di elaborazione dell’ordine

Sto affrontando un problema con l’ordine di esecuzione della pipeline di richieste API Web ASP.NET. Secondo la documentazione dell’API Web ASP.NET (disponibile qui ), i gestori di messaggi globali dovrebbero essere eseguiti prima del meccanismo di routing. Su questa immagine, MessageHandler1 è un gestore di messaggi globale mentre MessageHandler2 è specifico per Route 2 . […]

Passare i parametri nell’URL WebApi OData

Utilizzando Web Api ho un OData EndPoint che può restituire i prodotti da un database. Ho più database con schemi simili e voglio passare un parametro nell’URL per identificare il database che l’API dovrebbe utilizzare. Odata attuale Endpoint: http: // localhost: 62999 / Prodotti Quello che voglio: http: // localhost: 62999/999 / Products Nel nuovo […]

invia più oggetti a webapi con angularjs

Ho il seguente controller nella mia applicazione ASP.NET WebApi: [Route(“api/PutItem/”)] [HttpPut] public IHttpActionResult PutItem(Guid id, Item item) { if (!ModelState.IsValid) } E ho il seguente nel mio servizio “Articoli” AngularJs var doEditItem = function(item){ var deferred = $q.defer(); console.log(‘item’, item); var config = { headers: { ‘Authorization’: “Bearer ” + $rootScope.token } //,params: {id:item.ItemId} } […]

ASP.net MVC 4 WebApi – Test del contenuto multipart MIME

Ho un ASP3 MVC 4 (beta) WebApi che assomiglia a questo: public void Post() { if (!Request.Content.IsMimeMultipartContent(“form-data”)) { throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType); } IEnumerable parts = Request.Content.ReadAsMultipartAsync().Result; // Rest of code here. } Sto provando a testare questo codice, ma non riesco a capire come farlo. Sono sulla strada giusta qui? [TestMethod] public void Post_Test() { […]

OData v4 Function restituisce sempre 404

Cercando di passare da OData v3 a ODATA v4 . Perché continuo a ricevere un 404 quando provo ad usare le funzioni OData ? Configurazione API Web: ODataModelBuilder builder = new ODataConventionModelBuilder(); //etc builder.EntitySet(“LocalizableStringApi”); //etc var getComparitiveTableFunction = builder.EntityType().Collection.Function(“GetComparitiveTable”); getComparitiveTableFunction.Parameter(“cultureCode”); getComparitiveTableFunction.ReturnsCollection(); //etc config.MapODataServiceRoute(“OData_Kore_CMS”, “odata/kore/cms”, builder.GetEdmModel()); Codice C #: [EnableQuery(AllowedQueryOptions = AllowedQueryOptions.All)] [HttpGet] //[ODataRoute(“Default.GetComparitiveTable(cultureCode={cultureCode})”)] // Tried […]

Utilizzare il token di autenticazione MSAL per utilizzare Web API 2

Ho una API Web ASP.Net 2 su cui ho implementato la seguente sicurezza: https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-devquickstarts-webapi-dotnet Ha funzionato, non posso accedere ai controller tranne se rimuovo l’attributo [Autorizza]. Ora, ho un utente registrato in un’app Xamarin. L’utente ha effettuato l’accesso tramite l’autenticazione MSAL che funziona anche bene. Implementazione molto semplice: var authenticationResult = await App.IdentityClientApp.AcquireTokenSilentAsync(App.ClientScope); var token […]

OAuth v2.0 in combinazione con ASP.NET MVC 4 Web API

Sto cercando di creare un’API Web che utilizza lo standard oauth 2 per autenticare gli utenti con la mia applicazione esistente in cui comunica l’API Web. Quindi voglio configurare un oauth 2 server / servizio che controlli gli utenti con le mie applicazioni esistenti che hanno utenti e ruoli. Purtroppo non riesco a ottenere un […]