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. camelCased resourceby default

    I have a database with Countries (Capital c). I use camelCase with breeze and I can query like this:
    entityQuery.from("countries"). However, when I want to query locally I need to use entityQuery.from("Countries") or metadataStore.setEntityTypeForResourceName('countries', 'Country');

    I do the latter, but I would like this to be done automatically when setting camelcase as default.

    Or am I doing something wrong?

    4 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. 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 →
  3. Integrate with KendoUI

    I see Kendo doing work towards Breeze integration:

    KendoUI datasource http://www.kendoui.com/blogs/teamblog/posts/13-02-21/breeze_js_and_the_kendo_ui_datasource.aspx

    Kendo-labs repository
    https://github.com/kendo-labs/breeze-kendo

    Can I hope that Breeze will pick up the torch and make some integration progress as well?

    69 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. LINQPad Driver to test queries

    Write a driver to be able to test Breeze queries in LINQPad.

    http://www.linqpad.net/richclient/datacontextdrivers.aspx

    31 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. use MetadataStore.defaultInstance in EntityManager constructor as per documentation

    The documentation says that if metadataStore is not defined in the config when creating a new EntityManager then it will use MetadataStore.defaultInstance. However, that doesn't appear to be the case.

    The code actually creates a new instance:

    if (isCtor) {
    configParam = configParam.whereParam("metadataStore").isInstanceOf(MetadataStore).isOptional().withDefault(new MetadataStore());
    }

    This isn't a biggie but either the code or documentation should be updated so that they are consistent.

    1 vote
    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. Update samples to use typescript

    Provide samplese that use breeze and typescript

    114 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 →
  7. 124 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 →
  8. 5 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 →
  9. Avoid the manual entity type creation process when there aren´t 1:1 mappings between your database and client business objects .

    When using a lot of DTO´s instead of 1:1 entity mappings, having to add those types manually to the metadataStore is a "painful" process.
    I´ve come up with https://github.com/dotnetricardo/SummerBreeze to minimize that operation. can you please add a similar feature?
    Thank you very much!

    3 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. 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 →
  11. 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 →
  12. 29 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. Please make it works on IE7

    There are a lot of users still using IE7, if the breezejs hope to be widely adapted for any web solutions, IE7 support still a MUST.

    I have tried your suggestion on your documentation but no lucks.

    If you are sure that it works on IE7, please draft a documentation on how to adapt breezejs on IE7 under Windows XP.

    Just for this reason, I cannot adapt breezejs on my projects.
    Thanks.

    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 →
  14. Breeze with Grid

    Please show us how to use Grid to manage breeze entity. I always run into an issue when i want to use breeze with grid, most especially when it has to do with changing and updating the entity. There is always an error flag: Converting circular structure to JSON but when entityAspect is excluded from the entity, this error goes away. Thanks

    1 vote
    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. Integrate Breeze with FluentValidation

    I have used FluentValidation with mvc for some years now. And enjoy the excellent client side validation it's provide.

    Is there a way to use FV with Breeeze? I am about to refactor a part of an existing application to SPA ala HotTowel

    99 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 →
  16. Support NancyFx

    Add api support for NancyFx framework.

    56 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. 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 →
  18. Ability to extend client-side entities ad-hoc

    Add the ability to extend client-side entities ad-hoc so that they can be customized on a per-view basis for single page applications. In other words in context. At the moment we can define exactly one constructor function/initializer per entity using the registerEntityTypeCtor() method. Which is fine if you have only one view that deals with any given entity or you’re not creating a single page application. A real world SPA will have many views all dealing with the same entity in different ways and each view will need to add custom properties and methods to the DTO specific to that…

    5 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. Breeze.WebApi prevents exception handling

    Whenever an exception is thrown from a code triggered in an action method decorated with the BreezeQueryableAttribute, it will cause a new NullReferenceException to be thrown from within the the BreezeQueryableAttribute.OnActionExecuted method.

    This prevents standard, best practice exception handling and logging using ExceptionFilterAttributes.

    The exception thrown from the action that is expected to be handled and logged will never reach the exception filter, since it is hidden by the following NullReferenceException from Breeze.

    I have cloned the Breeze Git repository, and think the solution to the problem would be as follows:

    (In Breeze.WebApi.BreezeQueryableAttribute.OnActionExecuted, the following lines should be added in…

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

1. BreezeJS Feature Suggestions

Categories

Feedback and Knowledge Base