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.
272 results found
-
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 -
Support for Grails
please
16 votes -
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 -
[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 -
how upload image
How I can upload images when I save an entity?
thank you!!!15 votes -
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,
Michael15 votes -
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 -
Integrate Breeze with Oracle RDBMS
Smooth the integration process for companies who'd like to incorporate Breeze into their Oracle RDBMS.
14 votes -
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 -
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 -
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 -
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 -
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 -
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 -
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 RootIf 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 -
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 -
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 votesAdam,
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. :)
-
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 -
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 -
Support for Polymer/Web Components
It would be nice to see a <breeze-js> component to use in Polymer.
12 votes
- Don't see your idea?