Breeze 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.
-
RESTfull conception support
RESTfull concept suggests to use different http methods(get/post/put.delete) for CRUD operations with specific request params and responses. Also it suggests send only necessary info.(for ex. no need send entityAspect for RESTfull API).
Similar functionality exists in JayData. Will be great if Breeze will support this functionality too. It'll be usefull for big apps, for api which have to be shared to other clients and expand area of usage.
Also this functionality will add supporting DTO without writing own context provider for breeze.webapi .net framework because in this no need to use breeze.webapi .net. Generally users will develop asp.net web api…
61 votes -
Support .NET Validation Attributes
It would be great if the .NET validation attributes defined on the business model were sent along with the metadata. One benefit of this feature would be that we wouldn't have to redefine error messages on the client side.
54 votes -
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
21 votes -
Update samples to use typescript
Provide samplese that use breeze and typescript
18 votes -
Breeze clientside serialization of DateTimeOffset DataProperties
Thanks for addressing my case about supporting the CLR DateTimeOffset type in breeze (supported from v1.1.1).
Please look at this case for background information.
I have looked into how serialization of JsDate/DateTime/DateTimeOffset works in Breeze, and found a single shortage that defeats my idea of using DateTimeOffset on the server.
I believe that you will find my change suggestion reasonable.
* In breeze, Dates are serialized in ISO-8601 format ("yyyy-MM-dd\\THH:mm:ss.fffK") both by the breeze client and by JSON.NET configured by Breeze.WebAPI.
This is according to my expectations.* When a DateTimeOffset is serialized by JSON.NET on the server, the timezone…
7 votes -
18 votes
-
Seperate out EFContextProvider
I would like to start out by saying nice job on breeze. You guys have a breeze mvc webapi dll for those people doing .net. I really like the EFContextProvider, but I think it would be cool if it was a seperate project. This would allow users to use it in different class libraries to create repositories and a unit of work for the different models that you create and have one place to manage it. Keep it breezy, thanks
92 votes -
Support using stored procedures for retrieving data in EF
Using a sp in EF5 and have mapped the output to a complex type. Breeze doesn't seem to like that there is no key column, and not sure how to mark one as key so querying causes an error.
24 votes -
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)
2 votes -
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-kendoCan I hope that Breeze will pick up the torch and make some integration progress as well?
3 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();
});
}
}5 votes -
Expose a method on the EntityManager to "unwrap" an entity instance (toJS).
There are a few use cases where an entity instance needs to be sent to the server to an MVC API controller (for example for async server side validation); to do this, it is necessary to obtain an unwrapped version of the instance (plain JSON) that contains no internal properties such as entityAspect and uses properties instead of observables (ko.mapping.toJS is not suitable because of the former). Also, because the client configuration allows for a different naming convention, the method should be able to translate the names back to the naming convention originally used by the server.
Such a method…
11 votes -
Support Swagger specification for metadata
Hi, the Swagger specs (https://developers.helloreverb.com/swagger/) looks like a good metadata provider for REST services.
If Breeze can leverage this, then it can potentially support much more web API implementations other than ASP.NET WebApi.
For example, ServiceStack supports the Swagger API via a feature (https://github.com/ServiceStack/ServiceStack/wiki/Swagger-API).
Cheers.
40 votes -
adding ANY and ALL filter operators
It would be nice to filter on the properties of 1-n related enities. [Even if it is a collection of entites and not a single (1-1 related) entity.]
With my suggestion it would be possible to execute the following queries:
•find all movies starring a particular actor
•find all orders where at least one of the order-lines is for a particular product
•find all orders where every order-line has a value greater than $400
•find all movies tagged 'quirky' - where Tags is a multi-valued property.
•find all movies with a least one actor tagged as a favoriteIt would…
1 vote -
4 votes
-
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
20 votes -
5 votes
-
Use websockets/signalr to push updated objects instantly out to the client cache
On the client side, objects can get stale if they are frequently updated. Instead of requiring constant polling to see if entities have changed, allow updates to be pushed from the server out to the client cache. That change would in turn trigger knockout bindings so that the HTML instantly updates.
112 votes -
Hybrid FetchStrategy
A hybrid fetch strategy which first tries to execute a query locally then goes to the server if it fails or result count is 0. Different local and remote queries should be specifiable.
1 vote -
1 vote
- Don't see your idea?