CSLA 6 Survey Results #2053
Unanswered
rockfordlhotka
asked this question in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Thank you to everyone who completed the CSLA 6 planning survey. 46 people took the time to complete the survey, and this input is interesting and valuable!
As promised, here are the results.
csla-6-survey.pdf
And here are a few highlights:
I am pleased by the (to me) unexpectedly low number of folks still using older tech like .NET Framework before 4.6.1, older versions of EF, etc.
I am a little surprised at how many folks use raw ADO.NET vs abstractions like Dapper or EF. Not that I disagree, as I generally do the same, but I guess I did expect less people to be using raw ADO.NET.
I am not surprised by the number of people using Blazor. That shows here in the CSLA forum, as well as on twitter and other places across the Internet. This makes me happy, because I put a bunch of work into Blazor support for CSLA, and that was clearly time well spent!
Looking at containers and cloud, I am surprised that nearly half of folks responding don't plan to use containers. Personally I've switched to almost always targeting containers (usually Linux) for backend coding. I don't always run in Kubernetes, because that level of advanced infrastructure (and related complexity) is often unnecessary. The survey results show that most respondents agree, hosting their containers directly in Azure or AWS PaaS services.
In terms of comments, here they are, with my thoughts.
Thank you for the comment.
DataPortalException
; the primary complication here are exception types that exist on the server, where the exception type itself doesn't even exist on the client; not entirely clear what type of exception would be thrown in that caseClientContext
,User
, etc.) isn't flowing through the data portal that's a bug; I recently closed a backlog item related to this, because I was unable to reproduce such a scenarioThank you for the kind words.
This is absolutely possible today. In fact, ProjectTracker (prior to DI anyway) used a pluggable repository pattern for the DAL implementation, and that's one of the options discussed in the Using CSLA 4 book.
Because CSLA doesn't dictate how you implement your DAL, you can use any patterns you'd like.
Thank you for the kind words.
This is planned for CSLA 6 - at least getting full DI support for factory types; if you have other suggestions on ways to improve this model please start a discussion thread and we can discuss.
I am not sure how this would work? The CSLA rules engine relies on a rule being a type, so there's an instance of a rule at runtime that can be executed based on domain object/property lifetime events.
I could see ways to simplify the code in
AddBusinessRules
to be more fluent, perhaps via extension methods, and that could be pretty nice.Today you should be able to implement a rule's
Execute
method using a fluent API model.Beyond that I'd be interested in hearing ideas about how this would work.
There's no plan to stop supporting Razor Pages or MVC projects. I use them for quick-and-dirty projects frequently, because the scaffolding support in VS is quite nice.
That said, I'm increasingly using Blazor, because it is almost as productive, and the user experience is so incredibly much nicer!
This is on the CSLA 6 roadmap, in particular looking at the ability to inject
ApplicationContext
instead of having it as an effective "global static" location.If you have other ideas on ways to improve testing for DAL or data portal concepts I'd love to hear them!
I don't think this will happen in CSLA 6, but will probably happen in CSLA 7. I agree, eliminating the old model would clean things up for everyone.
I hope you are able to migrate to latest one day as well, but as with all business/enterprise software, I know things can move very slowly. That's why I try to maintain backward compatibility and support older versions of platforms when possible.
No pressure? 😉
Moving off WinForms is a big step, because no matter where you go, you are moving into a declarative UI model (XAML or HTML).
That said, I think the benefits are absolutely tremendous. XAML, and especially Blazor, offer such compelling data binding and event binding models, along with the ability to compose and style your UI elements and behaviors, it is like night and day compared to WinForms - in terms of developer productivity and quality of user experience.
Yeah, there's a very real learning curve, but the payoff is there.
Beta Was this translation helpful? Give feedback.
All reactions