Thinking about giving a shot to CodeFluent Entities, but you don’t know how to get started? This post might help!
First, you need to register on the CodeFluent Entities web site to automatically get a free license: Register.
When registering you get to choose between two licenses: Express or Personal.
The personal license is for non commercial use, for personal use and non-profit organizations, while the express license allows commercial use but limited to 10 entities. If you want to start with more, check-out our Version and Pricing pages.
Once you’ve registered, sign-in using your freshly created account, and under your personal information, you’ll find a list of your available license keys, its type, as well as a link allowing you to download the latest officially released build.
CodeFluent Entities is shipped in a ZIP file containing two setups:
You don’t have to install both, you can pick the one you want or both.
The Modeler setup installs a designer and new project templates to Microsoft Visual Studio 2008 and/or 2010.
As of today, the Modeler isn’t a final version, but still a release candidate.
On the other hand, the Core setup installs CodeFluent Entities’ build engine: you won’t have a graphical interface, instead you’ll need to write models yourself (see this video to view how it goes). Unlike the modeler which is still pre-release software, the core edition is a 5 year product currently used by customers for enterprise-class projects.
Once you’ve got it all installed start creating .NET applications!
See you soon!
CodeFluent Entities is a very collaborative tool.
- A model can be chunked
A CodeFluent Entities model isn’t necessarily a single file, in fact, it can be chunked into what we call “Parts”, each part corresponding in a file, so that several developers can work on the model at the same time.
- A model can have multiple surfaces
A surface is a canvas on which developers can manipulate entities, properties, and so on. A surface isn’t linked to a part, in fact you can add a surface containing all entities you’re working on.
CodeFluent Entities supports multiple namespaces in a single model. Furthermore, you define that a namespace corresponds a part so each developer can be entitled of specific scope of the application.
Going a little further, the persistence producers can translate those namespaces into actual Schemas (packages or also supported for Oracle) and the Business Object Model producer will actual generate C# namespaces.
- Source control integration
Last point covered in this post but not the least, CodeFluent Entities projects as well as its produced output support source control servers.
Implementing application-level security in your ASP.NET application gets real straightforward using CodeFluent Entities: all you have to do is declare those security entities (user and role), generate over, then configure your ASP.NET site to use the newly generated providers!
Here’s a video showing how to generate and use the generated code:
More information on membership entities is available in the documentation.
By the way, in the video above we’re doing it through XML and the builder, but doing it using the Modeler gets even easier:
- In the ribbon, click on “Membership Entities”
- Select where those entities should be placed, and provider options
- Create provider needed properties in both entities (click auto create mandatory, to create all required ones in a single click!)
- And there you go! In a few clicks we defined the membership entities in our model!
CodeFluent Entities supports internationalization by:
- supporting the standard .NET resource model,
- providing dynamic localization of data in the persistence layer,
- being multilingual ready in all parts of the generated application.
The following webcast illustrates how to generate .NET standard resources, and use them with no code behind in ASP.NET web forms:
By default, loading methods generated by CodeFluent Entities support server-side paging and sorting. Therefore, as an ASP.NET developer, there’s nothing more to do than bind our ObjectDataSource onto those methods.
The following webcast explains the generated code and illustrates how to do it:
Of course those paging and sorting methods can be used in other UI environments such as in Winforms, WPF, Silverlight, etc.
CodeFluent Entities provides optimistic concurrency management to your applications, without having you to code a single line of code.
It is activated on all entities by default and can be turned-off on the entire project (use the defaultConcurrencyMode attribute) or per entity (use the concurrencyMode attribute).
Basically, whenever you’re trying to commit a change on an instance which, meanwhile, was updated by another user, you’ll get a CodeFluentConcurrencyException in your application. Supporting concurrency in your web site is as easy as handling this exception in your user interface.
Here’s a webcast showing how concurrency is handled and how it works in the generated layers: