3.6.2 Cannot convert lambda expression to type 'Csla.PropertyInfo<string>' because it is not a delegate type

3.6.2 Cannot convert lambda expression to type 'Csla.PropertyInfo<string>' because it is not a delegate type

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


cds posted on Tuesday, April 28, 2009

Hi all

I'm converting a CslaLight Silverlight application from 3.6.1 to 3.6.2 and want to use the new property declaration syntax.

So, my existing BO classes have properties like:

private static readonly PropertyInfo<string> SurnameProperty = RegisterProperty(new PropertyInfo<string>("Surname"));

public string Surname

{

get { return GetProperty(SurnameProperty); }

set { SetProperty(SurnameProperty, value); }

}

which compiles fine. But when I change this property (and any other) to the new syntax:

private static PropertyInfo<string> SurnameProperty = RegisterProperty<string>(c => c.Surname);

public string Surname

{

get { return GetProperty(SurnameProperty); }

set { SetProperty(SurnameProperty, value); }

}

I get the compiler error:

Cannot convert lambda expression to type 'Csla.PropertyInfo<string>' because it is not a delegate type

 

What am I doing wrong. I've looked at the InventoryDemo solution which uses exactly the same style and it compiles (and runs) fine.

Puzzled!

Thanks,

Craig

 

cds replied on Wednesday, April 29, 2009

I got this figured out - it turns out I was still referencing the 3.6.1 version of Csla.dll in a couple of places in my project :-)

Hope this helps somebody else!

Craig

Copyright (c) Marimer LLC