CSLA .NET 3.6.1 RC1 available

CSLA .NET 3.6.1 RC1 available

Old forum URL: forums.lhotka.net/forums/t/6300.aspx


RockfordLhotka posted on Friday, January 30, 2009

I'd hoped to release 3.6.1 today, but a flurry of last minute issues this week leads me to believe it is smarter to make this a release candidate instead of a release. This is the final pre-release of 3.6.1, and will be the actual release barring any show-stopping bugs or build issues anyone points out to me.

I believe the code is quite stable and ready for release, but I'd rather err on the side of caution. Here are the download links:

Download CSLA .NET for Windows

Download CSLA .NET for Silverlight

Version 3.6.1 includes some important bug fixes, along with some moderate new features. Most of the new features are addressing oversights in 3.6.0 that block important scenarios (making methods virtual, adding extensibility points, fleshing out ObjectFactory, etc).

If you are using 3.6.0 you will absolutely want to move to 3.6.1 immediately, so please help me out by trying this release candidate to ensure there are no breaking issues.

Thank you!

paupdb replied on Sunday, February 01, 2009

Hi Rocky,

Any chance you could sneak the following change into the 3.6.1 release?

Make the Csla.Core.FieldManager.PropertyInfoManager class public in the cslacs .Net solution.

The reason I ask this is because currently there is no way to access the registered properties using a type.
  If there is please let me know how!

We have written a lot of stuff to run off the register properties and often we want to work with the type rather than an instance in order to get at the properties.  For example we are using an extended PropertyInfo which holds custom attributes like sql column name - we use these attributes to dynamically build simple sql statements.  In a lot of situations, being able to get at these properties (and thus their custom attributes) directly off of the class type makes things a lot cleaner.

Currently we have to modify the framework ourselves to make the PropertyInfoManager public in the .Net solution side.  This is the only mod we make to CSLA at the moment, and obviously it would be cool if this too was part of the standard framework Smile [:)]

ajj3085 replied on Tuesday, February 03, 2009

I just upgraded to 3.6.1 RC1.  I did the upgrade because AddBusinessRules is not being called when using a remote data portal, and it sounded like the force init issue.

My case is a bit different though; I subclass the non-generic Csla.Core.BusinessBase.. so I don't know if that is affecting anything.

I'm going to add the _forceInit code and see if it resolves the issue.  I'll post back either way.

ajj3085 replied on Tuesday, February 03, 2009

Ok, the _forceInit trick isn't working. So I guess this is something else.

RockfordLhotka replied on Tuesday, February 03, 2009

ajj3085:

My case is a bit different though; I subclass the non-generic Csla.Core.BusinessBase.. so I don't know if that is affecting anything.


I don't know either - I don't think I have many (if any) tests for objects created directly off Csla.Core.BusinessBase.

You are saying that AddBusinessRules() isn't being called - on the client or server?

And I assume you know that this method is invoked once per AppDomain per type - so it would be called exactly 2 times for a given business object type in a 3-tier model.

ajj3085 replied on Tuesday, February 03, 2009

It was on the client the method wasn't being called at all...  but it wasn't anything to do with _forceInit, so I started the other thread. The issue was that I wasn't calling base.OnDeserialized in my Document class. 

Fintanv replied on Wednesday, February 04, 2009

Rocky,

I just downloaded the RC1 version today (upgrade from the prior 3.6.1 beta), and there is a problem with the WPF property status control (I think ;-).  It looks like the following method was added: CheckProperty().  In this method an assumption is made that the Source property is never null.  I was getting a null reference exception after the upgrade.  I modified the code as follows, and it resolved the issue:

         private void CheckProperty()
        {
            if (Source != null)
            {
                var desc = Csla.Reflection.MethodCaller.GetPropertyDescriptor(Source.GetType(), Property);
                if (desc != null)
                    _isReadOnly = desc.IsReadOnly;
                else
                    _isReadOnly = false;
            }
            else
                _isReadOnly = false;
        }

Best Regards,
Fintan


 

RockfordLhotka replied on Wednesday, February 04, 2009

Thank you for finding that – Sergey also reported the issue and it has been fixed in svn.

 

Rocky

 

 

From: Fintanv [mailto:cslanet@lhotka.net]
Sent: Wednesday, February 04, 2009 2:22 PM
To: rocky@lhotka.net
Subject: Re: [CSLA .NET] CSLA .NET 3.6.1 RC1 available

 

Rocky,

I just downloaded the RC1 version today (upgrade from the prior 3.6.1 beta), and there is a problem with the WPF property status control (I think ;-).  It looks like the following method was added: CheckProperty().  In this method an assumption is made that the Source property is never null.  I was getting a null reference exception after the upgrade.  I modified the code as follows, and it resolved the issue:

         private void CheckProperty()
        {
            if (Source != null)
            {
                var desc = Csla.Reflection.MethodCaller.GetPropertyDescriptor(Source.GetType(), Property);
         &nbs p;      if (desc != null)
                    _isReadOnly = desc.IsReadOnly;
                else
                    _isReadOnly = false;
            }
            else
                _isReadOnly = false;
        }

Best Regards,
Fintan


 


Copyright (c) Marimer LLC