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. Propagate the .NET [RegularExpression] validation to the client

    [RegularExpression] should join [Required], [MaxLength], [StringLength] as a DataAnnotations validation attribute automatically propagated to the Breeze client through metadata. It's powerful. It should be relatively easy as it is string-based and regular expression specifications are (almost) the same in .NET and JS. See also [this StackOverflow question](http://stackoverflow.com/questions/16383161/regular-expression-server-side-unrecognized-by-breeze)

    50 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. Http POST for Queries to enable advanced search screens

    When creating advanced search screen it's easy to hit the url limit of 2000 approx characters, certainly when performing projection queries.

    Allowing queries to be sent using Http POST would remove that restriction.

    Similar requests have been made on stackoverflow: http://stackoverflow.com/questions/18789860/breeze-js-in-clause-or-http-post-for-queries

    50 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. Localization of validation error messages

    We are using BreezeJS in a fincancial bookkeeping DurandalJS/KnockoutJS based SPA.

    We have made a really nice reusable ui component for editing properties of breeze entities in the web ui, encapsulating label element + form field (with localized date/number formatting) + validation callout behavior showing the validation error messages.

    This editor component works really well; fueled by the breeze metadata providing extensive type information about properties we can dynamically display an appropriate form field, and the breeze validation framework helps setting maxLength to the form fields + required validation for non-nullable fields.
    We are also of course utilizing the extensible…

    48 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 →
  4. Allow for the filtering of Expands

    It would be most helpful if the results of an Expand could be filtered on the server-side. I.e, if you could have a particular Expand only ever include specific records. This would come in particular use when an institution utilizes "soft deletes", or needs to further filter those expanded records to only include those that should be visible by the current user.

    47 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 →
  5. Plugin for Ember.js

    Ember.js is a fastly growing and very impressive SPA web framework. Since Breeze is very well suited to OData this would give Ember developers who are developing against Microsoft and SAP a solid choice for their persistence layer.

    47 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 →
  6. More node.js / mongodb love

    I fall in love with Breeze, but the support in node / mongodb still needs a lot of work. I can't live with breeze anymore but I can't support .NET.

    I saw the TODO but wasn't updated since August 2013.

    Things like associations would change it completely.

    I vote for some sweet love for those who don't use .NET

    45 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. 44 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 →
  8. JSON serialization of CLR Enum types (string/number) should be configurable (on the server/client)

    Hello. I am currently working in a project using BreezeJS with Entity Framework and TypeScript.

    I found it unfortunate that Breeze decided to change the server-side serialization of CLR Enum types from their numeric representation (usually int) to the string representation (.ToString()).

    TypeScript supports enum types, and by defining enums both on client and server, we could have a had type-safe, strongly typed enums also in our client scripts.
    The plan was to generate a TypeScript file containing all enums used across our entites as post-build-event using reflection.

    But after the Breeze serialization changed, this will not work.

    I would…

    42 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 →
  9. mongoose models to breeze.js metadata converter

    It would be nice to have a facility to create breeze.js metadata from existing mongoose models.

    38 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. Create function to translate error messages

    it would be possible to include a function to breeze similar to the included in knockout-validation to translate error messages:

    //quick function to override rule messages
    ko.validation.localize = function (msgTranslations) {

    var msg, rule;

    //loop the properties in the object and assign the msg to the rule
    for (rule in msgTranslations) {
    if (ko.validation.rules.hasOwnProperty(rule)) {
    ko.validation.rules[rule].message = msgTranslations[rule];
    }
    }

    };

    Related to: http://stackoverflow.com/questions/14316454/translate-breeze-validation-messages

    38 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 →
  11. JSON API, Ember.JS & REST Support

    38 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    3 comments  ·  Flag idea as inappropriate…  ·  Admin →
  12. Provide a paired client side/server side validation module that would make it easier to apply the same custom validations on both the server

    This module would also have access to the user credentials associated with the end user performing the operation to be validated. Ideally, this would be configured via attributes as well as thru a programmatic API.

    37 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. QueryInterceptors and ChangeInterceptor are needed to implement Security

    One needs to write lots of code to implement query and change interception to EF context. With interceptors we can easily do this with Breeze like WCF Data Services.

    35 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    under review  ·  14 comments  ·  Flag idea as inappropriate…  ·  Admin →
  14. Validation integration with the FluentValidation framework.

    DataAnnotation is outdated and fills the POCO with dirt. FluentValidation support would be a great addition.

    34 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. Support the Azure Mobile Services

    It would be nice if Breeze directly supported Azure Mobile Services as a data provider/server endpoint. http://www.windowsazure.com/en-us/solutions/mobile/

    35 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. Extensible saveOptions and queryOptions can be interpreted on the server

    A mechanism for communicating extra material too/from the server method.

    34 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 →
  17. Support Mindscape LightSpeed ORM

    LightSpeed is rather interesting and has more features than EF. So, it would be nice if Breeze would support it either out of the box, or at least had a sample showing how to use the combo.

    33 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 →
  18. BreezeJs and Entity Framework Core

    Entity Framework Core has updated functionality I would like to use but as far as I can tell there is no way to retrieve the metadata BreezeJs requires on the front end. EF6 has this ability but I can't find a way to do it with Core. Using an EFContextProvider with a Core DbContext throws a conversion error. Is this due to Core or functionality missing from BreezeJs?

    32 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. support caching partial entities

    Currently, if you use a projection query to get partial entities, the resulting objects that are returned are not added to the EntityManager cache.

    As a result you have to write a lot of plumbing code if you want partial entities to end up in the cache (John Papa has one such solution for this in his SPA Jumpstart PluralSight course where he maps DTOs to Entities so they will be cached).

    If all we really want is a subset of an existing entity, it would be great if we could have some kind of query syntax that let the …

    32 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 →
  20. 32 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