Tag Info

OK, I guess I figured out the answer to my own question. If I want to go down this road, I need to provide meta-information together with the selected theme. The controllers can then look at this meta-information to adjust their own behavior.

Obtain the external data in the controller method, and pass the data to the view there.
If you need more finesse, write a repository, service layer or data context that contains the needed data retrieval methods.
Any customization or view switching can also take place in the controller, using helper objects or methods as needed.
The view should only be as ...

Generally speaking, a system architect designs a whole system including the hardware and the surrounding network infrastructure as well as economical factors like marketability, while a software architect is only concerned with the pure software. But like with all job titles you find in IT, the definition is very vague and different organizations can have ...

Obviously WinForms does not natively support one design pattern over another - the one that might not work is MVVM because you cannot "bind" data to the view model and have it update the data directly.
Otherwise - I would attempt WinForms with MVP - I've seen that done before -
here's a link to look at https://winformsmvp.codeplex.com/

I understand this post is year old, which is ironically the reason I am posting this response. First off, some of the people who answered this question are right. You're never really going to find a PHP Framework that come "MVC Ready" right out of the box...necessarily. Seeing as the framework is supposed to be a foundation where Dev's can build upon it, ...

Yes, keep your business logic in its own assembly. This will help to keep your layers separate. Don't let purely UI concerns creep in there, and don't let your data layer leak through in anyway. The idea is that when MVC / Razor is no longer the current way to build your web app, you can throw away your UI layer and keep your business rules, which is ...

You are totally interpreting it wrong. To sum up in one line "A facade pattern gives a simplified interface wherein we can use functionalities of a complex sub system". Use case of Facade pattern is to provide an accessor to the underlying low level methods of a complex service/package/component etc.
Following things don't come in the use case of facade :
...

The basic thing to grasp is that code relates to a single use case whereas data can relate to several use cases.
So while code first is good for a simple system with a few use cases anything complex with multiple use cases is going to need a decent data model to ensure that all use cases are covered.

I always use code first and would never think about data first unless I have to integrate with an existing database. Why?
Instead of starting by figuring out what database looks like, I start by figuring out what my application does.
I don't have to reconcile my up-front database design with the functionality, web pages, API's etc. Instead, I do all of the ...

If a team has:
A DBA,
Or a developer who is even slightly knowledgeable about databases,
then the team will be inclined to avoid code-first approach. This is the same as using WYSIWYG editors when your team knows HTML: while the job can be done with a WYSIWYG, you still need to do it by hand if you need decently written, maintainable code.
This has ...

All the data in your view is from the last GET, it has already been loaded, processed, and forgotten. The POST action is just updating some of it. What is reloaded during the POST just depends on the model and how it is used.
The reason for the Post/Redirect/Get approach in my experience is to prevent the common issue of re-posting data when using the ...

I think you should validate your models in... model validators ;)
In my current architecture each model has an associated validator class, which contains validation logic. (Controllers have validators as well, but that's not the point). This is because validation logic can sometimes be complex enough, especially when models receive states.
To validate a ...