Trunk is compatible with MVC RC

0 views
Skip to first unread message

Billy

unread,
Feb 10, 2009, 12:38:42 AM2/10/09
to S#arp Architecture
I have checked in an RC compatible version of S#arp Architecture; this
includes updates to the Northwind sample project and the VS project
template. The trunk/VersionHistory.txt file discusses the changes in
great detail and the upgrade path to it.

The only big change is with the CRUD scaffolding generator which is
now quite a bit more powerful having much more expressive entity and
property describing capabilities. It now enables you to generate CRUD
scaffolding and not have to mess with the output files at all to get
all passing unit tests, besides creating the table. Take a look at
the Northwind project's scaffolding generator to check out the new
capabilities. You can include property attributes, designate which
properties are in the domain signature, provide default values for
unit tests, and have unit tests automatically generated to support
your decisions.

A smaller, but important change is with the VS project template which
now builds in auto-persistence for generated projects. It includes an
interesting means to override conventions (see the Northwind sample
project for examples) but don't get too attached to it. James Gregory
of Fluent NHibernate (and on this discussion board) is considering
making some changes to Fluent NHibernate to make it easier to organize
overrides. After he finalizes that code change, after I check in the
change of entity.ID to entity.Id, and once I update the documentation
to this release, we'll be ready for an RC release package. (Hopefully
just in time for MVC 1.0!)

Billy McCafferty

Martin Hornagold

unread,
Feb 10, 2009, 8:20:14 AM2/10/09
to sharp-arc...@googlegroups.com
Billy,

Thanks for the update.

I was just having a look at the AutoPersistence support and noticed the
magic string lookup on the GetAutoMappingFilter method.

This implementation takes away the need for the magic strings:

private bool GetAutoMappingFilter(Type t)
{
return t.GetType().GetInterfaces().Any(x =>
x.IsGenericType &&
x.GetGenericTypeDefinition() ==
typeof(IEntityWithTypedId<>));
}

taken from:
http://stackoverflow.com/questions/503263/how-to-determine-if-a-type-imp
lements-a-specific-generic-interface-type


Martin

Billy

unread,
Feb 10, 2009, 9:28:50 AM2/10/09
to S#arp Architecture
Thanks Martin! Magic strings are the spawn of the devil; thanks for
the fix!

Billy


On Feb 10, 6:20 am, "Martin Hornagold"

Iain Holder

unread,
Feb 11, 2009, 9:58:12 AM2/11/09
to sharp-arc...@googlegroups.com
As always Billy, nice work.
Reply all
Reply to author
Forward
0 new messages