2013-12-05 2 views
3

Я использую самые современные (на сегодняшний день) BreezeJS, AngularJS, .NET, Entity Framework и т.д.Breeze ExecuteQuery преуспевает, но возвращает пустые объекты

У меня есть приложение Breeze, который выглядит правильно настроен, однако возвращаемые результаты из executeQuery (query) results.data содержат пустые объекты (т.е. они оцениваются как null).

Я использую фильтр BreezeJS take (1) и получаю один результат, чтобы все было просто.

Я могу подтянуть страницу метаданных (например, ~/breeze/appname/Metadata) и увидеть столбцы базы данных SQL Server очень хорошо.

Итак, что может быть? Кто-нибудь знает, что разрушается с концептуальной точки зрения?

стороне клиента запроса:

var query = breeze.EntityQuery 
     .from("Biography") 
     .select("ENTITY_ID, NAME, NICKNAME") 
     .orderBy("ENTITY_ID") 
     .take(1); 

стороне сервера [HttpGet]:

[HttpGet] 
    public IQueryable<BIOGRAPHY> Biography() 
    { 
     var biography = _contextProvider.Context.BIOGRAPHY; 
     return biography; 
    } 

отредактированные JSON ответ:

[{ 
    "$id":"1", 
    "$type":"_IB_JNMBHFIpB3WQZ6daOssY9Dxx_p8Y[[System.String, mscorlib],[System.String, mscorlib],[System.String, mscorlib]], _IB_JNMBHFIpB3WQZ6daOssY9Dxx_p8Y_IdeaBlade", 
    "ENTITY_ID":"4815162342", 
    "NAME":"Mr. Hugo Reyes", 
    "NICKNAME":null 
}] 
+0

Как выглядит запрос на стороне клиента и как выглядит метод на стороне сервера [HttpGet]> –

+0

@JayTraband Спасибо, я добавил код на стороне клиента и серверный код на вопрос. – user3071284

+0

Вы действительно действительно что-то возвращаете? Также вы могли бы опубликовать исходный json, который вы возвращаете со своей вкладки в сети браузеров? –

ответ

0

Чувствительность к регистру на выходе AngularJS: вместо item.entity_id должен быть item.ENTITY_ID, чтобы соответствовать случаю ответа JSON. Спасибо, ребята, за то, что задумались.

Смежные вопросы