Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeOur CommunityOur CommunityGeneral Discuss...General Discuss...Do not use MVC for DNN module developmentDo not use MVC for DNN module development
Previous
 
Next
New Post
9/30/2016 2:07 PM
 

To the developers thinking about using MVC in DNN 8+, from my personal experience the DNN MVC support is crippled. I couldn't use it when I tried to create a prototype using the third party MVC extensions I wanted to use. DNN simply doesn't support the full spectrum of partial views which is an integral part of ASP.NET MVC. It was a road block. You can either use the standard WebForms which Microsoft continuous to support and will support for years ahead. They are just a ton of WebForms web apps around. MS will not abandon the technology any time soon.

However if you are starting fresh and want to use something newer, skip MVC and use Javascript and any of the JS frameworks and any JS based UI controls. Telerik, DevExpress, Infragistics and ComponentOne offer both ASP.NET WebForms and JS/HTML based UI components. Or any JS UI component since they are not dependent on the backend technology used. They only need to talk to an API like teh SPA framework in DNN.

The advantage of using a JS/HTML front end is usually they also work very well for a mobile device if they are using responsive design principles.
The drawback is that you might be writing a lot of javascript code. To alleviate some coding pain,  I suggest using Typescript which supports strong types and object oriented principles like class and inheritance. You can have Typescript output classic ES5 Javascript which is compatible with all the browsers. Angular 2 is out and it strongly uses Typescript therefore you probably can't escape learning Typescript. All the ng2 examples I have seen use Typescript.

Personally I suggest dnnsoftware concentrates its efforts into the SPA framework. The MVC support is more like a hack and if it doesn't support the full ASP.NET MVC functionality then why bother.  You will get very frustrated if in the middle of your development project you wanted to use a critical ASP.NET MVC functionality and find out it doesn't work in DNN. It will be a big waste of time. Just do the development in WebForms or the newer SPA. Stay away from DNN's MVC. I wasted about 3 months trying to get it to work for my needs. Granted I was working on the RC versions. I got excited for nothing. It was a frustrating experience. The worst part is when you seek help in the forum and no one answers for the simple reason that very few developers are using MVC in DNN module development and understand what's going on. You're on your own. There is ZERO advantage of using MVC in DNN. I hope this message gets across to would be developers.

I keep hearing the message from dnnsoftware that they support ASP.NET MVC when the true story that the support is full of potholes. I also feel sorry for the forum posters who are seeking help in the forums for MVC. If you can an error you can't explain, it's probably because of DNN's wonky MVC support.

To be honest I wish they remove MVC support from DNN 9 so people don't fall in that trap. Two options only =>  WebForms and SPA.
Later when DNN is truly built on MVC using ASP.NET Core, if they every go there, then it can say it supports ASP.NET MVC.

I will post this as a blog comment and put it in the forum. I want this message to spread.

 
New Post
9/30/2016 6:47 PM
 
I don't believe there are any commercial or open source MVC modules around. Just the couple? which won the module contest. If MVC support gets ripped out, no harm done.
 
New Post
10/3/2016 5:01 AM
 

I've gone a step further- after being a DNN developer for over 10 years I have decided to part ways with DNN. There's just not enough support for developers.


I am now rewriting my PokerDIY.com site into a pure Angular app (learning ng2 and Typescript at the same time). (You can see an early Angular App version here:  http://www.pokerdiytournamentma.../)


I can deploy new versions to Azure in seconds and have no technical debt or timelines holding me back. The downside is that I have to write some of the core stuff myself - e.g. user management etc, however that does not take long with the new tools available. For me it is SPAs and pure javascript clients moving forward  (I do not recommend using ASP.NET MVC either). 

Using Azure services (or AWS or other) I can develop stuff in a fraction of the time I used to be able to (for example; an email queuing schedule with templates on Azure/Sendgrid took all of 4 hours to write) - a few years ago a multi-threaded scheduler and email engine took me weeks.

Taking the plunge to not use DNN means I am a LOT more productive now and have no dependencies. I am sure there are use-cases for DNN Dev but not for a developer who wants to write modern apps.



Entrepreneur

PokerDIY Tournament Manager - PokerDIY Tournament Manager<
PokerDIY Game Finder - Mobile Apps powered by DNN
PokerDIY - Connecting Poker Players

 
New Post
10/3/2016 8:55 AM
 
Hello Tony!

Which module template are you using? We are also facing some issues when trying do install DNN MVC template provided by dnnsoftware.com:

- http://www.dnnsoftware.com/community-...

Thank you
 
New Post
10/3/2016 12:30 PM
 
Nace   wrote:
Hello Tony!

Which module template are you using? We are also facing some issues when trying do install DNN MVC template provided by dnnsoftware.com:

- http://www.dnnsoftware.com/community-...

Thank you

I don't think I used a template back then. None were available. I did the setup manually. Created the manifest file myself, included the files and zipped everything.

 
Previous
 
Next
HomeHomeOur CommunityOur CommunityGeneral Discuss...General Discuss...Do not use MVC for DNN module developmentDo not use MVC for DNN module development


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out