2016-03-22 21 views
0

Karşılaştığım oldukça sıra dışı bir sorun var.Köşeli Açma Yöntemi - Bölüm Model

Şu anda bir İyonik uygulama geliştiriyoruz - Web API'sini arka uç DB olarak kullanıyoruz. Uygulama içerisinde, aşağıdaki gibi görünür geri API veri göndermek için bir $ http.post yöntemini çağırır:

$http.post(
    ApiEndpoint.url + '/PostUpdate/', 
    JSON.stringify(postData), 
    { 
     headers: { 
      'Content-Type': 'application/json' 
     } 
    } 
).success(function(data) { 
    alert("WORKS!"); 
}); 

tüm veriler Google Chrome Geliştirici Araçları aracılığıyla başarıyla SONRASI ed olmak görebilirsiniz : POST Web API vurur Ancak

enter image description here

- değil tüm verileri modelde yer alır. ,

enter image description here

ancak diğer özellikler (örneğin OutcomeId, TimeAttend: Bu modelde boş olarak ayarlandığında ancak - bir örnek olarak yukarıdaki verileri kullanarak, öğe "DetailsOfConversation" veri içerdiğinden olduğunu görebilirsiniz attendGivenAddress, jobId) ayarlanmış doğru değerler var. Bu beni zor durumda bıraktı! Sorunu nereden başlatabileceğim hakkında bir fikrin var mı?

DÜZENLEME: Aşağıdaki özel özellik uyguladık: http://weblog.west-wind.com/posts/2013/Dec/13/Accepting-Raw-Request-Body-Content-with-ASPNET-Web-API

beni POST verisinin ham bedenini görmesine izin veren, eksik alanlar OLAN görünüyor orada:

enter image description here

bu yüzden eğer bu çözülemezse, verileri (ideal değil, bildiğimden) ayıklayacağım.

+0

Ne tür bilgi DetailsOfConversation ?! Bir dize değilse, bir dizeyi geçirirsiniz, böylece özellik serileştirilmez. – Bettimms

+0

Hey orada kesinlikle bir dize –

+1

JSON.stringify olmadan deneyin ve sadece çalışıp çalışmadığını görmek için postData iletin. Verileri dizmek zorunda değilsiniz. – Lex

cevap

0

Lütfen seri hale getiricinizi kontrol edin ve aldığınızdan emin olun. ed içerik türü 'application\json', probably you dont have registered json serialiser or content type accepted as 'x-www-form-urlencoded' '. Daha önce benzer bir problemim vardı ve kaynağı diziselleştiriciydi.

+0

stumped var benim Global.asax.cs: HttpConfiguration config = GlobalConfiguration.Configuration;config.Formatters.JsonFormatter.SerializerSettings.Formatting = Newtonsoft.Json.Formatting.Girintili'ye; alıyorlar- http://stackoverflow.com/questions/13274625/how-to-set-custom-jsonserializersettings-for-json-net-in-mvc-4-web-api ve ben de değilim ayarı: 'Content-Type': 'application/json' benim $ http.post içinde –

0

Tanışmak bir süre var - bu yüzden de bir çözüm tahammül ettim:

dynamic json = Newtonsoft.Json.JsonConvert.DeserializeObject(input); 
string conversation = json.DetailsOfConversation; 

yukarıda bana ideal değil, gereken verileri verir ama geçici bir çözüm sanırım.

İlgili konular