Is it feasible to implement Breeze JS on the client side in conjunction with .NET 3.5

Is Breeze JS limited to being supported only in .NET 4 or 4.5? Can I use Breeze exclusively on the client side while my server runs on .NET 3.5 and utilizes ADO.net instead of Entity Framework? Will I lose out on any features of Breeze JS by using .NET 3.5? I have come across numerous articles about Breeze JS and MVC. How can this be achieved with .NET 3.5? Any recommendations would be greatly valued.

Answer №1

In order to support the BreezeJS client, the server must undertake three key tasks:

  1. Ensure the provision of metadata to the client
  2. Understand and respond to queries from the client by providing data
  3. Save changes received from the client

All these functionalities are available in .NET 4.5 through tools like the EFContextProvider (for Entity Framework) and NHContext (for NHibernate). It is necessary to find a suitable approach to incorporate these features into your own solution.

Metadata: Can either be manually crafted or generated using EF during design (even if EF isn't used at runtime). For project-specific metadata needs, a general-purpose tool may not be required.

Queries: Can range from simple to complex based on application requirements. Implementing filtering, sorting, as well as pagination with skip and take might suffice. Parameterized queries can handle most operations, eliminating the need to parse URLs. While this approach limits query types accessible from the client, it could fulfill all necessities.

Saves: Breeze "save bundles" include an array of entities, each specifying change status (Added, Modified, Deleted) along with altered fields. These changes must be applied to the database with consideration for their sequence (parent records addition preceding child records, deletion of child records before parent records).

In EFContextProvider, much of this functionality was managed by EF itself. In NHContext, querying is primarily handled through NH LINQ, while metadata generation and save processing were implemented in Breeze.ContextProvider.NH. You can refer to the GitHub repository for insights. Take a look at the NoDB sample as well, illustrating usage without EF or NH.

We eagerly await hearing about your implementation. Exploring Breeze without an ORM presents an intriguing subject.

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

"Supabase's getUserByCookie function is malfunctioning when accessed on a mobile

Having trouble testing my app on a mobile device because it is not receiving cookies from server-side requests. (works fine in Chrome) In the Next.js getServerSideProps function, I have the following code: export async function getServerSideProps({ re ...

The onmouseout event seems to be malfunctioning, whereas onmouseover is functioning properly

Forgive me if you're viewing this post twice, I believe I could have clarified things better. Essentially, I am designing a page that contains numerous elements. When the mouse hovers over an element, a "status" box should overlay on top of it. This ...

Transform flattened JSON data meant for forms back into its original object structure

My task requires me to convert specific form fields that contain "object nesting" in the field names back to the objects themselves. Here are some examples of typical form field names: phones_0_patientPhoneTypeId phones_0_phone phones_1_patientPhoneTypeI ...

Traverse a nested array of objects within an array of objects in JavaScript to remove a specific entry

Here is the structure of my array: const array = [ { '12345': [ { name: 'item one', numbers: ['12345', '77484'], }, { ...

What steps should I follow to modify information in my JSON file through Postman?

Is there a way to update data in a JSON file using the patch method in Postman? I am looking for the syntax to use when selecting the patch method and clicking send, so that my data gets updated in the JSON file. const express = require("express&quo ...

Display or conceal a div element depending on the user's choice

I am looking to hide inactive divs, but whenever I reload the page, all tab contents merge into one. The screenshot below shows the issue I'm facing. Screenshot Below is the code snippet: $('.tab a').on('click', function ...

Using v-for to pass two properties to a single component in VueJS

Hey there! I'm trying to create a v-for loop with a component that has two different props COMPONENT <template> <div class="bg-light rounded p-2 px-5"> <h5> {{ number }}</h5> <h3>{{ item }} ...

Converting a string into a GUID using inline C# in an ASP.NET application

Can you convert a string to a GUID using inline C# in ASP.NET? For example, I want to pass a string for CustomerId and have it formatted as a GUID because the stored procedure requires a Unique Identifier. <asp:SqlDataSource ID="myDataSOurce" runat="se ...

Handling events for dynamically created buttons in asp.net

In my code behind, I have created a button using the following method: some method { Button btnExportToExcel = new Button(); btnExportToExcel.Text = "Export To Excel"; btnExportToExcel.Click += new EventHandler(btnExportToExcel_Click); pnl ...

Guide on implementing short-circuit evaluation in Vue method?

Recently, I have been working with vue-cli and vuex to implement a specific functionality. Here is the code snippet that showcases my current progress: methods: { filtered() { let vol = this.$store.state.data[1].data.filter(i => i.type === 'vol& ...

Retrieve information stored in a JSON data field within the results of an npm

How can I properly access the value of DepDateTime from the first object? Here is my current attempt: const nodeSkanetrafiken = require('node-skanetrafiken'); const from = { name: 'Bjärred centrum', id: 62025, type: 0 }; const to = ...

The import for "EventEmitter" does not match any exports in "browser-external:events"

While setting up my ReactJS application to connect it to MetaMask wallet, I imported InjectedConnector from @web3-react/injected-connector. However, upon starting the Vite server, I encountered the following error: ✘ [ERROR] No matching export in "b ...

Combining Gridstack.js with Vue 3 components

I'm currently working on setting up a gridstack.js dashboard using Vue 3 and I am looking to have the grid stack items incorporate dynamic vue 3 components. The issue arises where these grid stack items can only accept HTML content. Even though the d ...

Obtain the row of the selected checkbox using jQuery and send it in an AJAX request

I have implemented a jQuery function to retrieve the selected checkbox row from a table. It worked perfectly fine until I tried passing this data through AJAX, where I encountered an error stating that myData is undefined. Here is the snippet of code in qu ...

Disabling a checkbox and unchecking it through jQuery

Below is the code snippet where I am dynamically generating td elements within a for loop. jQuery("#dialog_load_content").load(url, function() { var clientName = jQuery('#client option:selected').text(); var clientId = Number(jQ ...

Version 1.0.4 of Angular CLI seems to be causing a discrepancy where updates made to component code are not appearing in the browser

Issue with Angular cli - Modifications in components don't reflect when the application refreshes. Only after stopping and running 'ng serve' again, changes become visible. System details: Node v6.10.2 npm v4.6.1 Operating System - Windows ...

The Heroku Node.js application encountered an issue when trying to apply the style due to an incompatible MIME

As a complete beginner in Node.js and Express, I am encountering some errors from the console. When trying to load my CSS file from '', I receive the following error: "Refused to apply style because its MIME type ('text/html') i ...

Automatically switch tabs upon pressing/scanning the Return key (using PHP, MySQL, and JavaScript)

Seeking assistance to resolve an ongoing issue that has been troubling me for the past few weeks. I am maintaining a basic web-based database to keep track of product serial numbers leaving our warehouse. The system is secure behind our firewall, so I&apo ...

How can I identify when a node/express ajax request is received?

I have set up a node/express server that sends the ajax-start.html file. Within this file, there is a script that enables ajax requests to be made to the server. Everything functions correctly in this setup. However, I am looking to enhance this process by ...

I am trying to showcase a collection of images on my homepage, but unfortunately, it is not functioning as expected

Does anyone know how to display images using Angular? I am currently utilizing the pic controller in an AngularJS file. Any assistance would be greatly appreciated. HTML CODE <!DOCTYPE html> <html> <head> <meta charset="utf-8"& ...