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. Support for NotMapped properties server side

    it would be useful to have support for server-side properties notmapped together with the properties of normal db. Obviously readonly
    Thanks

    22 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 →
  2. MVC Service (v.3 and v.4)

    Breeze supports Web API today. Our shop uses MVC 3 and MVC 4 ... but not Web API yet. Could Breeze talk to MVC controller methods and exchange JSON data as it does with Web API controllers?

    21 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 →
  3. function parameters in query clauses

    Add ability to pass functions into *where* clauses, *orderBy* clauses, etc., instead of strings, for better intellisense and TypeScript type support.

    20 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  4. EntityManager should accept different service address for generating metadata

    Currently EntityManager accepts a service name, which it uses to fetch metadata and also resolve controller/actions.
    E.g.
    var manager = new breeze.EntityManager("servicename");

    At the Web Api end, I will have multiple controllers. E.g. OrderController, CustomerController etc... based on the need of my application. I will also have a HomeController where I will have the method Metadata() that is used by Breeze to fetch metadata.

    When I try to make my first query, Breeze automatically tries to fetch the metadata information. So in this example it will hit the following URI: http://servicename/metadata, but ideally it should be hitting http://servicename/home/metadata.

    19 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 →
  5. 19 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. Entity creation: Initialise Foreign Key - Properties which are Nullable with Null (Currently it's 0)

    i'm currently working on a angular/breeze/web api - based solution.
    to simplify user input i'm marking all the required fields thanks to the getValidationErrors() method. in this case the user presses an add button on a grid, then a new entity gets created and angular takes care of the rest. sounds good right?
    This works for regular Properties but not for Foreign Keys because they get created with an "0" Value (I didn't assign defaults and the column is not nullable) and therefore validationErrors is empty after entity creation which is imho wrong.

    additional information:
    http://stackoverflow.com/questions/20339402/breeze-entity-creation-foreign-key-column-is-set-to-0-by-default

    19 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  7. Add Mask to zValidate Breeze/AngularJS validation directive

    zValidate is the best practice for validate view and model with AngularJs and if this directive will have mask property It will be cool.

    19 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. Northwind example with Java Spring & Hibernate

    Hi,

    I have downloaded java northwind example from github (https://github.com/Breeze/breeze.js.samples/tree/master/java/NorthBreeze)
    Then i create northwind database and deploy server with Java. The server return data and metadata json look good.
    But when i deploy client and call server, i received error:

    "Metadata query failed for: http://localhost:8081/NorthBreeze/breeze/northbreeze/Metadata. Unable to either parse or import metadata: Error configuring an instance of 'NavigationProperty'. The 'foreignKeyNamesOnServer' parameter is optional or it must be an array where each element must be a 'string'; [object Object]"

    Here is my Medata JSON return, please see this file in URL:

    https://onedrive.live.com/redir?resid=17269D19CFD14BB3!3861&authkey=!AIm0ajxNBoSCFyY&ithint=file%2ctxt

    Can anyone help me?

    Thanks very…

    18 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. Support Entity Framework 6 with WebAPI 1 / .NET 4.0

    Current EF6 support requires WebAPI 2, which only runs on .NET 4.5. Please consider adding support for using EF6 with WebAPI 1 on .NET 4.0 for those of us with old Windows 2003 Servers.

    17 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. Switch to Bluebird promises

    Bluebird promises are orders of magnitude faster than Q promises, they're more modern and they provide a more consistent API for now.

    Switching to them should show improvements in speed as well as debuggability (better long stack traces for example).

    17 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 →
  11. Asynchronous validation

    I'd like a feature that will consent to perform asynchronous validation.
    Actually, a custom validator like the one below will always return as undefined so a falsy value. It would be great valFunction will be evaluated after the db response.

    function createExistingUsernameValidator() {
    var name = 'existingUsernameValidator';
    var ctx = { messageTemplate: 'Existing username', displayName: "Username" };
    var val = new Validator(name, valFunction, ctx);

    return val;

    function valFunction(value, context) {
    var result = ko.observable(true);
    require('services/datacontext').getIsUserByUsername(value, result)
    .then(function () {
    debugger;
    return !result();
    });
    }
    }

    16 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  6 comments  ·  Flag idea as inappropriate…  ·  Admin →
  12. 16 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 →
  13. Remove Requirement for Foreign Keys

    Hello,

    Currently, it appears that in order for navigation properties to work, they must be coupled with an explicit FK property that contains the value for the relationship. This leads to entity contract pollution and should be eliminated, if possible.

    I am having to modify my models to comply with Breeze, and that is a poor development experience.

    Thank you for any consideration,
    Michael

    15 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. [FlagsAttribute] enums should be an array on client-side

    Enums that are marked with FlagsAttribute are not properly kept on client side. They are always a string separated by comma ","
    Bummer. It should be an array so it would fit nice with ko` checked binding.

    Besides it would be much easier to work with them.
    They should be serialzed (coerced) with comma when sent to the server only!

    15 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. Add decimal precision and scale to metadata

    t doesn't appear as though the breeze metadata includes the precision and scale of decimal types. It simply identifies a property as "Decimal". The information is available in EF models. Is this something that could be added to the metadata and retained in dataproperty?

    I believe similar attributes may be useful for other numeric types.

    15 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 →
  16. how upload image

    How I can upload images when I save an entity?
    thank you!!!

    15 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 →
  17. Fire event on metadata load

    We could use an event indicating that the MetadataStore is loaded. As discussed in stackoverflow http://stackoverflow.com/questions/14146841/how-to-attach-to-metadataloaded-event-or-equivalent-in-breeze-js/20470781#20470781 I see that the recommended solution is to call fetchMetadata. But, we have experienced – more than a little – that sometimes fetchMetadata fails, but subsequent queries succeed. Preventing queries while retrying fetchMetadata would be a lot of work. With an event, we could very easily handle metadata initialization – in our case validations.

    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 →
  18. Allow for recursive expand and select.

    Allow to query recursively on an object type. See https://issues.oasis-open.org/browse/ODATA-38. To take the example from the OData implementation you could query a manager and return the recursive tree of all employees under that manager to a specified number of levels.

    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 →
  19. Transparent local vs server queries.

    I don't want to distinguish between local and server data. I'd like the framework to work out the cache state and refresh as necessary based on hints I provide - such as FIFO, LIFO, or callbacks for conflicts.

    14 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  3 comments  ·  Flag idea as inappropriate…  ·  Admin →
  20. Integrate Breeze with Oracle RDBMS

    Smooth the integration process for companies who'd like to incorporate Breeze into their Oracle RDBMS.

    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 →
  • Don't see your idea?

1. BreezeJS Feature Suggestions

Categories

Feedback and Knowledge Base