Tag Archives: Entity SQL

Entity SQL and spatial data

When the Entity Framework was first introduced it came with (basically) two flavors of querying. LINQ to Entities and Entity SQL (ESQL). I’m not going to describe the history here. But as LINQ (any LINQ) gained popularity it was obvious, that LINQ to Entities is a future (though it had initially small deficit compared to Entity SQL). I even on my courses recommend using LINQ to Entities whenever possible and I’m also showing some dynamic querying where normally people start concatenating ESQL strings.

Recently Entity Framework added support for spatial data (and enums, …). All examples I’ve ever seen around spatial data and Entity Framework were using LINQ (obviously). Only few weeks ago I realized how the querying should work with Entity SQL. As it turned out spatial data are not first class citizen in Entity SQL world. There’s no literal for i.e. point. But canonical functions are here to save you. There’s a bunch of these spatial data related. What we’re looking for though is GeometryFromText/
GeographyFromText. With these you can construct Geometry/Geography datatype from well-known text (WKT) and use it in query.

I’ve never used Entity SQL query in any real-world application I created. I’m too afraid of typos etc. But I did a lot of magic with expression trees. :) Wondering what percentage of people using Entity Framework is using Entity SQL and whether there are some scenarios that are crazy hard in LINQ…

ADO.NET provider for Firebird 3.0.1 released

Few weeks ago the 3.0.0 version was released (actually it was during Firebird Conference 2012, during my talk ;) ) and it came with some new features and improvements (hence version 3.0.0). And as it goes, nothing is perfect and few items slipped through testing phase. So that’s th reason why today, I’m happy to announce version 3.0.1 to be released.

You can download it from NuGet or from Firebird SQL site as it gets updated.

This release contains fixes for two regressions introduced in 3.0.0. You can see both in tracker. It’s also my initial step to release these small bugfix releases more often (as discussed in list).

Go grab it, while it’s hot.

ADO.NET provider 3.0.0 for Firebird and DDEX provider 3.0.0 for Firebird released

I’m pleased to announce version 3.0.0 of ADO.NET provider for Firebird and version 3.0.0 of DDEX provider for Firebird. ADO.NET provider 3.0.0 comes with couple of bug fixes and two major improvements.

  1. Changed transaction isolation modes
  2. New installer that updates machine.config

You can read more about the first at DNET-337. Basically now ReadCommitted and ReadUncommited are same. And using (among others) FbTransactionBehavior.RecVersion/isc_tpb_rec_version. That should better match the default behavior a lot of people is expecting.

The new MSI installer now not only installs all the necessary files, but also updates machine.config file and registers the assembly into GAC (you can select not to do it). So after full install, you don’t have to do anything. You’re just ready to go.

The rest of changes can be seen in tracker log for this version.

The DDEX provider 3.0.0 comes with new installer as well. Now when you do the install, the DDEX provider is fully registered into Visual Studio (you can select version(s) during install) and ready to go as well. No need to fiddle with registry or any other files.

Hope you’ll enjoy these improvements.

Continuous builds for Entity Framework

If you’re following everything around Entity Framework at least a little you know it’s now open source. Except the obvious think of having sources available for study, bug finding, improvements etc. there’s also option to play with bleeding edge features available. If you’re into it or there’s one particular bug fix that changes the world for you into piece and happiness instantly I have a good news for you.

On my build server I set up continuous build (after every commit) and all the binaries that Entity Framework solution produces are precooked for you. The top level folder in the package is always the revision “number” so you know from what commit the build is.

Currently I’m running unit tests, but ignoring results. Because some are failing. :) I’ll try to solve the problems soon.

If there’ll be interest I can also create automatically NuGet package and publish it, currently don’t know it’s worth, considering it’s really from every commit and thus probably very unstable.

Go grab the package and have fun.

18.9.2012: Entity Framework nightly builds are now available at CodePlex.

ADO.NET provider for Firebird 2.7.7 released

The 2.7.7 version of ADO.NET provider for Firebird is ready for download. This version contains some bug fixes as well as new functionality.

From bug fixes I’d like to point out to:

  • fixes of Firebird events handling and receiving
  • FbConnection.GetSchema(“ForeignKeyColumns”) fixes
  • Entity Framework query generator fixes

The functionality is mainly about:

You can find all details in tracker and download it from website or NuGet.