1. BreezeJS Feature Suggestions

Help us make Breeze.js better by letting us know what you’d like to see next.

Suggest new features, vote on existing ones, or fork Breeze in GitHub and send us a pull request.

  1. Separate access for large data items such as images and files

    Bad performance occurs for a large data item (entity property ... table column) such as an image or file -- on both read/download and write/upload. It would be great if breeze could provide separate access for such large data items. For example, the ability to read and cache entities without transferring the large properties and the ability to transfer the large items in a way that does not kill the user interface.

    14 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  2. Error when expanding navigation property with reference to root entity

    Given an entity relation like this:

    Type Root has a collection of type Related
    Type Related has a collection of type Root

    If you do a query like:

    Root?$filter=id eq '123'&$expand=Relateds/Roots

    An error "This key is already attached" occurs when executing the query when it discovers the top-most Root within Related/Roots.

    13 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  3. Support the $callback query string parameter for the BreezeController

    I would like to use the BreezeController with Kendo UI Grid, using Kendo's native ODATA support, but it requires that the $callback paramter be supported.

    13 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →

    Adam,

    I’m not sure about this one. We’d like Kendo devs to use Breeze for data mgmt rather then Kendo. Can you provide use with a detailed use case for this?

    Regarding $callback, definitely. Support for JSONP would be very valuable. Let’s get some votes on this one. :)

  4. Provide Observable ErrorMessage at entity level & at Collection Level so that error messages can be displayed next to entity and then again

    IN LOB application it is very critical to display error message next to the field in error as well as summary of errors.

    When Binding the collection to HTML table, expose the Error Collection so that error message can be displayed in data-bind. This should be observable so that it HTML markup is updated dynamically when errors occurs and is cleared when error are corrected.

    Similar observable error collection as List level to display summary of error as well. since this is summary, when clicking on error item, ability to set focus to the Editable filed in HTML table would…

    13 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  5. many-many relationship for NHibernate

    Similarly to EF, many-to-many relationships don't seem to work when using NH on the backend. This is a requirement we have for our project and currently we have to expose the association table as an entity, which is bad.

    13 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  6. Predicates with the DateTimeOffset type

    I try to execute a Query containing the following predicate:

    var predicate = breeze.Predicate.create("myDateProp", breeze.FilterQueryOp.LessThan, new Date());

    "myDateProp" is of type DateTimeOffset in the server-side EF entity (and breeze client-side metadata).

    Executing this query throws the following error on the server:

    Microsoft.Data.OData.ODataException:
    "A binary operator with incompatible types was detected. Found operand types 'Edm.DateTimeOffset' and 'Edm.DateTime' for operator kind 'LessThan'."

    I am not sure whether this is a bug in the Microsoft OData Libraries that breeze depend upon, or whether the problem is in the Breeze server DLLs.

    This is really critical in our project as we consistently use the…

    13 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  7. BreezeJS and Moongose

    Hi All,

    I am new to MEAN stack, I am to easily for Moongose based apps and developed rapid prototypes in less than 30 mins, but with Zaa example even though I can run the sample in 10 mins. The concept of metadata generation with respect to MEAN stack very confusing, where as for .NET MVC example I can easily understand.

    12 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  8. Support for Polymer/Web Components

    It would be nice to see a <breeze-js> component to use in Polymer.

    12 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  9. Also support Almond for AMD

    I use Almond (https://github.com/jrburke/almond) as a (smaller) replacement for RequireJS, but have some trouble getting Breeze to work with it.

    Main issue is that Almond doesn't allow anonymous modules, which is how Breeze defines itself at the moment.

    12 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  10. breeze.js createError function can't handle datajs errors

    My ODataController Post method was updating its entity's CreatedOn property with DateTime.Now value before it's saving to database.

    Apparently datajs doesn't like DateTime.Now value and gives an error with "Invalid date/time value".

    File: datajs-1.1.2.js - Line 2133

    After datajs throws the exception, it falls to breeze.js createError function. However, since it's expecting error.response property, it fails to continue by giving "response is undefined" message.

    File: breeze.debug.js - Line: 15302

    I've updated the function by adding a check for response property;

    function createError(error, url) {
    // OData errors can have the message buried very deeply - and nonobviously
    // this code…

    11 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  11. EntityManager.getEntityGraph - get a root entity's object graph from cache

    Like the FindEntityGraph method in DevForce (http://drc.ideablade.com/xwiki/bin/view/Documentation/query-working-in-cache), this method would return an array of entities in cache consisting of the root entity and the related entities as specified in the call, perhaps with "expand" syntax. Could use for partial saves as requested in this S.O. post (http://stackoverflow.com/questions/13575058/how-can-i-save-a-single-entity-with-entitymanagers-savechanges-method). Also useful for moving graphs between EntityManagers and to browser local storage.

    11 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  12. 10 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  13. Breeze offline docs

    Please, make it possible to run breeze documentation locally like angularjs provides https://code.angularjs.org/1.2.16/angular-1.2.16.zip

    Or think about devdocs.io, would be great see breeze docs there

    It is annoying to wait half a minute to walk through the online docs every time I need them

    10 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  14. Clear the cache of a single entity type

    To work with larger amounts of data, it would be useful to be able to clear the cache of a single type of entity.

    Especially useful when you want to fill the local cache with large amounts of data to use with a 3rd party grid or tree view.

    10 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  15. Provide a simple example demonstrating use of BreezeJS+Mongodb

    The only example I can find demonstrating BreezeJS and Mongodb with enough information to replicate it is the Zza project. This has some configuration and launch issues anyway, but is also a million miles from being a minimal application.

    None of the Todo-style apps, which would be perfect tutorials, have a description of how to set up a Node+Mongodb back end and are universally reliant on Visual Studio, meaning Mac and Linux developers can't use the library. The live tutorial apps have no description of how to set up a suitable HTML or database at all, let alone for Node+Mongodb.

    10 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  16. Support Paging natively

    I'm using .take() and .skip() for paging with a table.

    When I "insert" an entity into the database, I reload my table (new query). Now I would like to jump to this new object inside the table and highlight it.

    I need an elegant solution to find on what page the new object is and then use skip/take to jump to the correct page.

    My Suggestion:

    Maybe Breeze could natively support paging by allowing to specify a page-size in the query and which page to deliver (instead of using take and skip and calculating it on the client).

    If this…

    10 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  17. 9 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  18. .withHeaders for specifying optional headers to pass along

    If we have specific headers we want to pass along for certain calls and not others we don't have the ability to easily handle that when we are using an OData adapter. I've seen implementations where this is handled by setting values on the oData default http client, but that makes the setting occur for EVERY call when I would like to have a more granular level of control to be able to pass along headers in certain scenarios.

    9 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  19. I want to develop restful api on nodejs using breezejs and Odata built upon microsoft entity framework.

    I want to develop restful api on nodejs using breezejs and Odata built upon microsoft entity framework. Please let me know when your team is providing breezejs for ms entity framework for nodejs

    9 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  20. Please add support for the ODataConventionModelBuilder

    3.0 spec:
    "The association MAY also specify zero or one edm:ReferentialConstraint elements."

    Please comply with the standard, and please remove these old articles that's promoting the highly flameable EdmBuilder ;)

    9 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

1. BreezeJS Feature Suggestions

Feedback and Knowledge Base