Jasper Data Layer
I seeJasper” is built on top of the ADO.NET Entity Framework ,but I know also EF will not ship in Orcas.
So I think jasper should have a data access layer with provider for any data access technology.
I can use jasper with LINQ ,and with ADO.NET EF,and with db4o, ext...
[372 byte] By [
redmoon] at [2008-2-13]
As you note the Entity Framework is not shipping with Orcas RTM and it is shipping as an update to the Orcas .Net Framework. The announcement for that is here. The Entity Framework is the platform that enables us to build services like Jasper and Astoria on top of it. In the future we will be building more services on top of the Entity Framework because it will support providing a conceptual model to any supported backend. As long as their is an ADO.NET Provider to a given backend database then that backend will plug into the Entity Framework and services like Jasper and Astoria will just work.
Regarding your comment about LINQ. We do support LINQ in this CTP release of Jasper, however only Linq to Objects is supported. While we were working on this CTP we did work to have our dynamically generated classes and collections upport LINQ; essentially providing the ability to translate LINQ queries to the backend query language. This support is available to in the Entity Framework in the form of LINQ to Entities. Unfortunately, due to limitations in VB.NET 9.0 and Iron Python 1.1, we were unable to support translation of these LINQ quries to appropirate backend query language. Supporting LINQ in our dynamic laguages (VB.NET, Iron Python, Iron Ruby, etc) is extremely important and we are currently working with teams across the compnay to get this working.
In the mean time, if you would like to perform queries that are translated to backend queries and provide these optimizations you can always use Entity Sql. For example if you were connected to Northwind and wanted to return all the customers that were from "France" you would write the following code:
Code Snippet
context = DynamicContext.CreateDynamicContext(connectionString)
For Each customer In context.Customers.Where("it.Country = @Country", New Objects.ObjectParameter("Country", country))
Console.WriteLine(
"Customer " & customer.ContactName & " from " & customer.Region & " has the following orders:") For Each order In customer.Orders
Console.WriteLine(vbTab & "Order was placed on " & order.OrderDate & "and need to be delivered by " & order.RequiredDate)
Next
Next
Here we've iterated over each customer that is from a specific country. We only return from the database those customers, and their orders, that come from that specific country.
Does this make sense?
Thanks,
Carl Perry
Program Manager ADO.NET
thanks for your answer.
And I am glad to see that "Supporting LINQ in our dynamic laguages (VB.NET, Iron Python, Iron Ruby, etc) is extremely important and we are currently working with teams across the compnay to get this working."
Did you read my thread(http://groups.google.com/group/ironpy/browse_thread/thread/eb6b9eb2241cc68e) on IronPython mail-list?
Your above information is useful for me.