Questions tagged [csla]

CSLA .NET provides a home for your business logic. It helps you build a scalable and reusable business domain object model for your application. Your business logic can run anywhere .NET runs: Windows, iOS, Android, Linux, Mac, and more.

Questions with the csla tag should relate to the CSLA .NET framework.

CSLA .NET

A Home for Your Business Logic

CSLA .NET is an open source framework, created by Rockford Lhotka, designed to help developers create a rich, scalable, reusable, and maintainable business domain model for their application. This business domain model is ideally designed around user scenarios/stories or use cases, and encapsulates business, validation, and authorization rules.

CSLA .NET also supports an architectural concept called mobile objects. Using this concept, in an n-tier application the business object graphs are able to move between the client workstation and application server. The CSLA .NET data portal enables this concept, as well as completely abstracting any idea of the network from the application code. The result is that an application can switch from a 1- or 2-tier deployment to a 3- or 4-tier deployment without needing to change any application code.

The platforms supported by CSLA .NET include:

  1. Windows (MAUI, UWP, WPF, Windows Forms)
  2. Android (MAUI, Xamarin)
  3. iOS (MAUI, Xamarin)
  4. MacOS (MAUI, Xamarin, .NET Core)
  5. Linux (MAUI, Xamarin, .NET Core)
  6. WebAssembly (Blazor, Uno, etc.)
  7. Blazor, ASP.NET MVC, Razor Pages, Web API, Web Forms

The primary feature areas provided by CSLA .NET are:

  1. Business rules: CSLA .NET includes a rules engine supporting business, validation, and authorization rules. This engine integrates with, and extends, standard DataAnnotations, and brings DataAnnotations support to WP7 and Windows Forms. Additionally, it supports synchronous and asynchronous rule execution
  2. Data binding support: Business objects created with CSLA .NET support data binding in all supported platforms. The data binding support includes full support for in-place editing in datagrid controls, as well as read-only data, and standard detail forms.
  3. LINQ: CSLA .NET collections are queryable, and can optionally create "live views" so changes made to the results of a LINQ query are automatically synchronized with the original business object.
  4. Mobile objects: Through the data portal, CSLA .NET supports 1-, 2-, 3-, and 4-tier application deployments, and allows an application to switch between deployment configurations without changing existing code.
  5. Abstract persistence: CSLA .NET is not an ORM and does not implement mapping to databases. However, the data portal does provide a clear, well-defined structure for invoking the application's data access layer. This is abstract, and supports the use of any data access technology, including ADO.NET, Entity Framework, dapper, REST service calls, interacting with the file system or XML files, or any other data access model you care to use.

Important links

Other resources

222 questions
1
vote
2 answers

How to create a platform ontop of CSLA? <-- if in case it make sense

Here is the scenario, I'm developing an application using csla 3.8 / c#.net, the application will have different modules. its like an ERP, it will have accounting, daily time record, recruitment etc as modules. Now the requirement is to check for…
Peejay
  • 98
  • 1
  • 1
  • 4
1
vote
4 answers

Issues with storing the custom Principal in Session for ASP.NET MVC

I am running into an issue with ASP.NET MVC where it is forcing the user to log back in after about 20 mins of inactivity. I am using Forms Authentication and have increased the time-out in the config file as:
mattruma
  • 16,589
  • 32
  • 107
  • 171
1
vote
2 answers

Recommendation for creating DAL objects

Can you recommend a DAL object creator that is simple yet useful. I want something that creates and updates object the way LINQ does. It should be in c# and much better if it splits object's properties and data access methods in partial…
Jojo Sardez
  • 8,400
  • 3
  • 27
  • 38
1
vote
1 answer

CSLA remove child object

I am new to CSLA and still trying to get my head round it. I need to know how do we delete a child object through its parent ? e.g If I have a Project class (parent) which has some ProjectResources (child) and I need to delete a project. How do I do…
1
vote
0 answers

Getting error on using WCF Service with CSLA

I have a create a Wcf Service using WcfPortal.It exposes basic method Fetch,Delete,Insert and Update. I use this Service in my MVC project as below ServiceReference2.WcfPortalClient obj = new ServiceReference2.WcfPortalClient(); Application App =…
NARVESH
  • 41
  • 1
  • 4
1
vote
1 answer

set Null but not 0 - int

Is there a way to transfer null? If I try so, it takes it as 0. The Property is nullable in the Business-Class and in the SQL-Table. Im using a Combobox with a ClearSelectionButton so maybe there is already a way to fix it in the View. My ComboBox…
dennis schütz
  • 383
  • 4
  • 21
1
vote
3 answers

Subsonic and CSLA.NET

Can SubSonic be used with CSLA.NET? Has anyone tried this. From my understanding SubSonic is a DAL CSLA.NET is a BAL (BLL) I can't seem to find any information on this.
Saif Khan
  • 18,402
  • 29
  • 102
  • 147
1
vote
1 answer

How do you get CSLA 3.02 BusinessListBase ListChanged event to identify the child object whose OnPropertyChanged triggered the event?

I have a project that is using CSLA 3.0.2. I have a BusinessListBase collection object that has child items that have an IsDefault property. When a child object has its IsDefault property set to true, I want to set the other child members IsDefault…
Seth Spearman
  • 6,710
  • 16
  • 60
  • 105
1
vote
3 answers

"Hiding" part of List

Task: I want to hide a part of my CSLA ChildList but without using any extra Columns in my Database. (like visible ? true / false) Example: I have a List of all member. Im setting a filter which allows me to see only the member with the number 3.…
dennis schütz
  • 383
  • 4
  • 21
1
vote
2 answers

.NET 4.5.1 WCF Serialization exception

Our LOB application is a client server application which uses CSLA business objects, those business objects are being serialized using the NetDataContractSerializer. The server side is running on WCF and the client has endpoints. This all works when…
rfcdejong
  • 2,219
  • 1
  • 25
  • 51
1
vote
3 answers

Optimizing my Search function using foreach() - perfomance

Here is the deal. I have got 3 Tables. Main ( contains ID and a list of SubMain ) ~ 130 items (after first filtering) SubMain (contains SubMainID) ~ 120 items (which got a n to m reference so there is an other table) MainToSub ( contains ID,…
dennis schütz
  • 383
  • 4
  • 21
1
vote
1 answer

Async CSLA Calls

The 'standard' CSLA async server calls have typically been structured per the following: Base class: public static void GetMyObject(EventHandler> callback) { var dp = new DataPortal(); dp.FetchCompleted +=…
Joe
  • 1,295
  • 13
  • 16
1
vote
1 answer

BusinessListBase.Remove doesn't work

I'm new on CSLA.Net and I've some difficult to remove a child object from a list. I've 3 classes : Scenario : BusinessBase ScenarioPermissions : BusinessListBase ScenarioPermission :…
Franck Charlier
  • 414
  • 4
  • 17
1
vote
2 answers

CSLA Editable Grid

Which CSLA framework stereotype should be used with an editable presentation grid?
1
vote
1 answer

Experience with CSLA in a WPF/WCF application

Has anyone used CSLA in an application that has a WPF front end and a WCF wire for entities? If so, which "entity framework" did you use? (nHibernate, Linq, etc...) What were the hang-ups? What did it help you with? I am concerned with implementing…
Phobis
  • 7,524
  • 10
  • 47
  • 76