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 executing arbitrary stored procedures within the transaction scope SaveChanges

    Support executing arbitrary stored procedures within the transaction scope SaveChanges

    [Or] allow some way of tying in to the transaction scope for any SQL

    26 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. Named save

    Route a save request to a different save method on the server (on the controller).

    23 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 →

    Breeze 1.3 adds named saves.

    By default the EntityManager.saveChanges method sends a save request to an endpoint called “SaveChanges”. With “Named Save”, you can target a different server endpoint such as an arbitrarily named action method on another Web API controller. There are two new properties on the SaveOptions class. A resourceName (for the action method) and a dataService (for targeting a different controller).

    http://www.breezejs.com/documentation/download

  3. Which libraries for Java on Github

    Hi,

    I see 3 branches of Breeze support Java on github. What is different?
    The Json-UriBuilder Branches is look fully. I'm intergrating breezejs with java spring and hibernate to use with AngularJS.

    Thanks

    21 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    completed  ·  2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  4. Decouple Breeze from Entity Framework

    I like what Breeze does but I need it to work for a hand rolled ORM or NHibernate or any other ORM.

    I would also like it to be able to cope with classes that don't have navigation properties in them. NHibernate does not force you to pollute your business entities with foreign keys to allow it to work. Breeze needs to be able to deal with this.

    Thanks

    17 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 →
  5. There should be an AfterSaveEntity

    Why isn't there also an AfterSaveEntity.
    For example would be very useful for sending notifications (emails, messages) once a bigger operation is done.
    Also everything should be done inside a transaction, so that if something crashes it should automatically Rollback

    16 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. 16 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. Attributes on controller actions to block the use of Select and Expand

    Define attributes that block the use of Select and Expand.

    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 →

    Attributes for blocking Select and Expand were added a few builds ago, but we’re marking it complete on UserVoice today. Sorry for the delay.

    Breeze 1.3.1 is now available, including Inheritance and OData writes/saves.

  8. Attribute on controller actions to limit result size

    Add an attribute that can be placed on a Web API controller action to limit the number of entities that can be returned in this query.

    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 →
  9. 11 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 →
  10. Try to coerce string bindings to a data property's data type

    Knockout binding of textbox to an integer data property can be fail validation because it sets the property with a string. Breeze, which knows the property's datatype, should attempt to parse the string to that datatype. Extend this idea to all datatypes (including date) and for all model libraries.

    11 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 →

    As of Breeze 0.80.2, automatic datatype coercion is now applied when setting any Breeze ‘entity’ properties.

    This means, for example, that when setting a string to a numeric or date field that Breeze will attempt to coerce the value to the correct datatype before assignment.

  11. Support for query parameters

    Something like

    var query = new EntityQuery()
    .from("CustomersStartingWith");
    query.parameters.add("A");

    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 →

    Build 0.76.2 adds a new EntityQuery method: withParameters.

    This method allows custom parameters to be passed to any server side method, in addition to those that Breeze uses for its normal querying. Custom parameters can be mixed in with other query clauses.

    For example:

    var query = EntityQuery.from(“EmployeesFilteredByCountryAndBirthdate”) .withParameters({ BirthDate: “1/1/1960”, Country: “USA” }) .where(“LastName”, “startsWith”, “S”) .orderBy(“BirthDate”);
  12. Support TypeScript 0.9.5

    The latest release of the TypeScript compiler does not compile the TypeScript definition file (breeze.d.ts). The compile rules have been tightened to not allow duplicate overload signatures. This affects the EntityQuery.using(...) and QueryOptions.using(...) overloaded method declarations.

    9 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    completed  ·  1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  13. Make it easier to create custom DataTypes

    I've been able to write a custom DataType implementation for Moment.js but am stuck in places where the equality of two instances of the DataType is evaluated.

    Currently, there are a number of lines of code which specifically handle Dates differently because of their inability to be compared using ===. For instance, in a35_defaultPropertyInterceptor.js:

    // exit if no change - extra cruft is because dateTimes don't compare cleanly.
    if (newValue === oldValue || (dataType && dataType.isDate && newValue && oldValue && newValue.valueOf() === oldValue.valueOf())) {
    return;
    }

    However, that means if I want a custom DataType, and need a custom…

    6 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    completed  ·  2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  14. Create a backend connector for rails and activerecord

    I need a connector with example for ruby on rails with activerecord. You've mentioned supporting it before, but I have yet to see any further information. I'm willing to help out but I need some direction. Thanks, Ben

    6 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 a closing bracket

    There is a closing bracket missing on this page:
    http://www.breezejs.com/documentation/customizing-ajax

    Line 7 in the second code block:
    if (isFooRequest(xhr))

    It's no big deal but thought I'd let you know...

    4 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. camelCase translation option for entity properties defined as PascalCase on server

    Look at the case of the first letter of bound property and behave differently if upper case

    4 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    completed  ·  0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  17. Correct the instructions on this page

    EFContextProvider constructor has been updated to not need the "dbconnectionname" - the instructions still have that.

    SaveChanges() has changed to use JObject, so change it from JArray

    4 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. 3 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 →
  19. Update SaveChangesCore to allow custom validation errors to be returned

    Adding Custom Validation Attributes (e.g. "[MyCustomAttribute]") to your model class causes the SaveChangesCore() method to throw an 'ArgumentNullException' instead of the expected 'ValidationException' when the model Custom Validation Attribute is invalid. This is because the exception message formatting code assumes that 'key.EntityKeyValues' will never be null, which apparently is not the case when a Custom Validator prevents the model from being saved. It would be nice to correct the code to assume 'key.EntityKeyValues' can be null so that the server-side validation exception message can at least be returned to the client. See http://stackoverflow.com/questions/14332833/breeze-js-not-returning-custom-validation-error-messages-from-server for more details.

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    4 comments  ·  Flag idea as inappropriate…  ·  Admin →
  20. Add client NuGet packages

    Add a NuGet package which installs the scripts necessary for a breeze client app.

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

1. BreezeJS Feature Suggestions

Categories

Feedback and Knowledge Base