CslaContrib and Csla4

CslaContrib and Csla4

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


JonnyBee posted on Thursday, December 30, 2010

Hi all,

I'd like to remind everyone of the CslaContrib project at http://cslacontrib.codeplex.com and wish to welcome contributions for Csla4.

Already available are:

CslaContrib
* Caching capabilities in DataPortal with Windows Server AppFabric (courtesy of Magenic)
* Additional generic rules like: LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual, ToLowerCase, ToUpperCase and more.

CslaContrib.MEF
* MEF support with intermediate base classes for Repository data access
* Custom ObjectFactoryLoader and ObjectFactory attribute for ObjectFactory data access

CslaContrib.Windows with updated controls for Csla4
* ErrorWarnInfoProvider
* SmartDateTimePicker
* BindingSourceExtension (Unbind/Rebind)
* BindableRadioButtons
* ListSelectForm
* SplashPanel
* StatusStripExtender

As well as sample code for using MEF with both Repository and ObjectFactory data access.

The previous content for older versions of Csla is still available in the $\Brances folder.

I'm sure many of you have code and samples that you could consider to share with the community. If you wish to contribute then contact me on the CslaContrib site.

You may send me code (with grants to publis it on CslaContrib) or I can give you contributor access to CslaContrib.

tiago replied on Friday, December 31, 2010

I'm glad to see CSLAcontrib back in action. Besides CslaComboBox (ComboBox with a read only behaviour) that is already in the trunk, i intend to submit SmartDate improvements for Csla 4. As to CslaActionExtender improvements (http://forums.lhotka.net/forums/p/8009/38445.aspx)  I'm not sure if they should be done in Csla trunk or CSLAContrib. A few Transformation Rules are also on the pipeline.

I use a "customized" CustomIdentity / CustomPrincipal that were extended to support extensive authentication information like WindowsIdentityAuthenticationType (NTLM, LDAP, etc) LocalStatus, LocalMachine and LocalDomain names, current Windows authenticated user and current Csla authenticated user (they can be different) and also Csla UserID. I'm willing to share this but as it uses some of Rocky's code from PTracker, I'm not sure if both licenses are compatible.

I'd like to see CustomFieldData ported to Csla4.

These look a lot like a new year's decision, but that's just a coincidence Smile

JonnyBee replied on Monday, January 03, 2011

Hi Tiago,

I'd probably regard LocalStatus, LocalMachine, LocalDomain names, current Windows authenticated user etc to be contextual information and rather put these into ApplicationContext.ClientContext (and will be submittet on every to call to the server) rather than viewing it as authentication information and part of the Indentity/Principal object. Just my opinion - both ways work but having it as contextual information would work with any type of authentication. Geeked

CustomFieldData is "ported" by Jason Bock to Csla4 and available here:
http://jasonbock.net/JB/Default.aspx?blog=entry.9cc70d85bef34e2b9a683ba82615f8a3

 

tiago replied on Saturday, January 08, 2011

JonnyBee

I'd probably regard LocalStatus, LocalMachine, LocalDomain names, current Windows authenticated user etc to be contextual information and rather put these into ApplicationContext.ClientContext (and will be submittet on every to call to the server) rather than viewing it as authentication information and part of the Indentity/Principal object. Just my opinion - both ways work but having it as contextual information would work with any type of authentication.  

 

Funny enough, that's exactly what I do. On successful login, i call

private static void SetContext()
{
    ApplicationContext.ClientContext["LocalStatus"] = NetworkInformation.LocalComputer.Status.ToString();
    ApplicationContext.ClientContext["LocalDomain"] = NetworkInformation.LocalComputer.DomainName;
    ApplicationContext.ClientContext["LocalMachine"] = Environment.MachineName;
}

Wink 

bniemyjski replied on Tuesday, January 18, 2011

Hello,

Are the SmartDate's and Smart Datatypes even relevant anymore? Nullable types replace the behavior and it is built in to .NET. Not using them sure makes the DAL much easier to program against.

Thanks

-Blake Niemyjski

JonnyBee replied on Tuesday, January 18, 2011

If only as a data container in WPF/SL then yes,

But you also have a number of options like:

t =today
y=yesterday

I've even extended SmartDate in our own apps to:

+1y  =  today + 1 year
+2m = today + 2 months
+ym = today + y months
-5d   = today - 5 days

which is nice for banking/financial institutions. Users like this.

Curelom replied on Tuesday, January 25, 2011

Is there any example code on how to use the new Caching capabilities?

JonnyBee replied on Tuesday, January 25, 2011

Only sample code now is the unit tests.

 

Curelom replied on Tuesday, November 06, 2012

Excellent.  I really like the way you coded this.  Thanks

uiopasa replied on Tuesday, January 18, 2011

I implemented the example described in Rocky's MVVM video "Deeper dive into collections".  I was succesful in my implementation of the "New Employee" and then went forward to implement his navigation example going from the list of employees to the employee item.  The navigation works fine (I get my list and can edit the selected item) but for some reason, when I click on my button to create a single item, the propertystatus controls will not validate my object anymore and therefore will not change the status of my fields and buttons.  Any help would be greatly appreciated.
Pure Collagen Skin Care

Copyright (c) Marimer LLC