Umbraco with bespoke application - umbraco

For the my project I am currently umbraco platform as CMS to work with other Bispoke (custom) application that is going to be developed in MVC3. The scope of the project roughtly is as follows:
1) Product Download & Deployment (Bispoke)
2) Product Documentation (CMS)
3) Suport (tickts & its workflow cycle) (Bispoke)
4) Blogs (CMS)
My question is what is the best approach to use Umbraco to integrate it with Bispoke apps? There will be some functionalities which will be shared between CMS and Bispoke apps.So I would like to get these two under one roof.
Any idea how to achive this?
Thx

This is quite a broad question so it's hard to answer definitively.
However there are some areas that you need to watch out for.
Firstly take a look at this question which talks about MVC and Umbraco integration:
MVC and Umbraco integration.
Next is the question of shared functionality. This is a broader architectural issue. In this case create a business logic layer which can be used by either Umbraco or MVC. That way you can share the functionality and keep the actual MVC and Umbraco portions of the app nicely separated.
The biggest issue will be sharing of things like templates or UI code that could be shared but implemented differently depending on if it is being consumed by MVC or WebForms.
It's rather hard to be any more specific.

Related

Need advice on E commerce development in MVC

I have to create a eCommerce store in ASP.NET MVC having some custom features.
After through R&D I have sort listed three major eCommerce frameworks available-
nopcommerce
smartstoreNet ( SSNet)
MVC Music Store
Later after more R&D I have selected smartstoreNet as a base for further customization.
After R&D for weeks still I have many doubts & confusion about smartstoreNet (SSNet), would be more than happy if some one guide me in right direction.
Please take a look at my questionnaires:-
I did not found many review of SSNet on web & on Stack overflow, Please share your experience if you have work with the SSNet. How fast & flexible it is?
2.custom Theme creation or Updation document is not in detail, so how to integrate custom or designer's html/css in its theme
suppose I have added some custom functionality in the framework how it would be affected when I update the SSNet framework to newer versions, should I use custom plugins or keep track of my custom development & re -implement everything after version updation.
How efficient the system to handle medium load eCommerce shop having 500-1000 products, speed can't be compromised.
There is a ongoing legal battle between NopCommerce Vs SSNET, how it could affect SSNET users in future in case they lose the case.
I don't expect you to answer all questions :) still pointing me to right direction would be a great help.
I would also select an e-commerce framework/store that is based on the ASP.NET MVC framework.
I have worked through the MVC music store code a while back while learning ASP.NET MVC. I do not know where you stand with ASP.NET MVC but if you are looking to go e-commerce and looking to up your programming skills by using this framework then MVC music store might be a route for you to take. It will put you well on the path of learning this framework. It is really a basic e-commerce store.
If you already have some basic ASP.NET MVC knowledge and looking for something more advanced then I would look at nopCommerce. It is a well thought out e-commerce store and it can easily be customised and extended. You can create your own modules or have them developed for you. It is also easy to setup even if you don't have ASP.NET MVC knowledge - just follow the on screen instructions. It sounds easy right?
I don't have any experience regarding smartstoreNet. If I were to choose one out of the three that you have listed then it would be nopCommerce.
I wouldn't worry to much about any legal battles at the moment - don't let it affect your decision.
Don't know much about SSNet but here's my take on the other two (that i can remember on top of my head :)
nopcommerce - this is very easy to setup. it's extensible bec of support for adding pluggable components/features.
MVC music store - might be too basic for your needs.
Again these are just my thoughts as well based on what you describe for your requirements. Hope it helps. Good luck!
Use MVC, reasons are :
1- Easy to develop, optimize, maintain and make modifications.
2- its scalable and provide everything that a website needs. Dont just look at mvc music store, MVC is highly scalble
3- You can find support while developing mvc on many websites and stakeoverflow also.
Good luck :)
ASP.NET MVC based site is a good choice if you want to control the logic and behavior of the site at a low level. It will take a lot of time/skill/experience to do your own customizations though.
A couple of other out of the box solutions you may want to look at are Magento and Prestashop. These are fully functional ecommerce systems that you can extend with plugins, so quite different to the approach of coding the site yourself. But you may save a lot of time by going with an out of the box solution.
I'm not familiar with SmartStore.Net other than when previously researching this topic myself I was leaning more towards Magento and Prestashop since they had better ease of use.

Plugin architecture in .NET like wordpress

We're going to upgrade our old classic ASP system to .net.
This old system manages different ecommerce sites.
What we would like to do is to create a asp.net (vb) system like wordpress with plugins.
This way, the layout can be completely different between the sites.
For example a login plugin can be anywhere on the page with different settings for layout and display. Or even with a separate plugin css.
This way the setup time is minimal for the webmasters, and the developers can develop new plugins.
Now i'm stuck at .net 2. and haven't had time to follow the advantages of 4 or even 4.5.
I just start reading about MVC.
What is a good solution to follow? MVC? Any available frameworks for this setup?
If you have any links o samples, please share.
thanks for the help.
The Orchard CMS project is a good example of a modular, plug-in based MVC application: http://www.orchardproject.net/ Although not branded as a Microsoft project, they have contributed to its development, and I believe part of the intent is for it to be used as a reference architecture.
There are also any number of very similar questions here on SO, many with good answers:
How to use Plugin Architecture in ASP.NET?
Plugin-like architecture in .NET
I can't personally think of any reason you would stick with .NET 2.0 if 4.0 or 4.5 is an option. Each version of the framework has built upon those previous to it, and I don't know of any mainstream body of opinion that thinks any version has been a major mistake. Whether you choose MVC or WebForms is a matter of personal taste. My own view would be that MVC is marginally better-suited to the kind of modular development you are planning, but other's mileage may vary...
Take a look at http://umbraco.org/ it's build on ASP.NET MVC and already has the features you want, Umbraco is open source so you can learn allot from it's code base.

Orchard for custom websites

I've just installed Orchard and created a sample site. I want to evaluate this CMS to see what it's capabilities are if I could choose it for my CMS of choice for ASP.NET MVC based sites. Has anyone used it to run a custom, highly modified website? Unfortunately no sample sites are provided at Orchard site to see it in action.
I know what my requirements will be and those are quite demanding. I have my own little CMS in ASP.NET MVC 2 which I tailor to my needs anytime I want but it lacks a lot of functionality that you get when you have a bigger team of developers at your disposal like the Orchard has.
The best way to reply to this question is if you can provide some insights into customization and if you can provide a link to a working site.
There are a couple sites out there.. Here are three I have worked on...
These two were for a University, they have a contact us page, Payment system, and also hooks in to multiple databases with a large set of business logic for students and payments. The Registration system also has an updated menu template to deal with drop downs.
http://housing.bathspa.ac.uk/ (v0.5)
http://registration.bathspa.ac.uk/ (v0.5)
My blog jsut has a modified theme which was enough to get me up an running.
http://www.themayneissue.com/ (v0.5)
There are a few open source modules I work on as well..
http://orchardopenauth.codeplex.com/
http://orchardblogml.codeplex.com/
These also allow for customization of the Orchard system
There are two community sites using Orchard, Orchard Gallery and NuGet gallery.
For now me with my team is being writing an appication for nearly two months using Orchard and the only thing I can say is that it is awesome!
Yes, Orchard is very simple for now, but it is so powerfull in the same time. I just love their dynamic shapes and content types. Use it and you'll love it!
And as a bonus:
Just get code from repo and look through it, it shines like a diamond (the only problem is lack of comments). I am sure every MVC developer will find a lot of stuff to learn from it.
There is another web site developed using orchard.

How to design a plugin architecture for ASP.NET with MVC Web application

Introduction:
Now I know this question could be very broad and it would be too hard to answer without me asking something specific. So All I ask is just some direction, or a brief high level explanation of a design, or maybe there is already some framework out there that could help me get started...I'm not sure.. I have never designed a plugin architecture before, so maybe there is some resource/example you could point me to on the web that would help me learn so that I may come up with my own solution.
Details of my question:
My intention is I would like to create a plug-in architecture for a new pet-project that I am building in ASP.NET MVC.
I would like to design it so that it has some sort of plug-in ability for all, or at least most, of the application's components.
The reason I would like to do this, is so that I may be able to do deployments with nearly zero down time. The idea is that when I want to deploy the latest version I would drop in the new DLLs into a specific folder, and the application would load up the new plug ins and that is it.
For exapmle, lets say I add a new "contacts" feature to my web application where users can search, add and delete contacts. I would like to be able to deploy that by way of plugins.
Is something like this even possible for Web Applications? Or am I just dreaming?
It's definitely possible.
You will need to define a pretty comprehensive interface that represents everything your plugins will have to do. You should approach it by differentiating what is "core" to your application, and where the extensibility points are. For example, where will the plugins be accessed? Will they be tabs on a page, or links in a sidebar? What properties does each plugin need to have in order to fit into the plugin container?
Generally, plugins are enumerated via reflection by looking for assemblies that implement the plugin interface.
Just for encouragement, we've done this with an enterprise product that provides a generic framework for "management" interfaces for web sites. Developers just need to drop in a plugin dll that builds specific property pages, and they show up in the management interface menu, all the navigation is taken care of, and their dll's just have to worry about their own domain logic.
There is always the dll-way where you define some interfaces that plugins follow.
But for web application, especially ASP.NET MVC, you need a controller, views and so. Probably these can be included in a dll file using prepared controller factory to handle that, but it would be hard to develop these plugins.
Some inspiration for code (or db) embedded content: Haacked about that
ASP.NET MVC version 2 will support areas, where you can put some parts of the application into different folders within the app. This way you can just upload some files and the app will recognize these new files. Read more there Haacked blog
PS: I found another person here on S.O. asking the same question as me:
Plug-in architecture for ASP.NET MVC It might be useful for someone researching the same topic.

Are there any cms system in asp.net mvc like drupal

I'm new to asp.net mvc world. Are there any cms system based on asp.net mvc like drupal (php, cms, plugin modules). I dont like dotnetnuke because they use webform and difficult to extends.
thanks
Without having too much Drupal experience, Umbraco is a nice choice if you want .NET (despite the fact that they have an animated favicon). There's professional support also if you need it.
I am surprised nobody mentioned Orchard.
Basic Orchard Concepts
Orchard is a Web CMS, which essentially aims at helping you build web
sites from existing pieces. Those pieces come in a few different sizes
and shapes that need to be well understood if you're going to be
productive with them. This article will go through those pieces and
explain their names and behavior.
More info: http://docs.orchardproject.net/Documentation/Basic-Orchard-Concepts
BeerHouse.
From their website:
TheBeerHouse is a website developed with pure ASP.NET 2.0 which includes a number of features and modules that you expect from a typical CMS / e-commerce website, such as:
* Layout with user-selectable themes.
* Membership system with registration, login, profile setup and complete administration.
* Content management system for publishing and syndicating articles and photos, with support for categories, comments, rating and profile-based personalization.
* Opinion polls with support for multiple active polls and archived polls.
* Mailing lists with support for HTML and plain-text newsletters, background transmission and real-time AJAX-based feedback.
* Forums with support for multiple categories, custom pagination, avatars, signatures, moderation, and complete administration.
* E-commerce store with support for real-time credit card processing, with support for multiple categories, percentage discounts, zoomable pictures, ratings, availability display and more.
* Homepage personalization with webparts.
* Localization.
I didn't think DNN was difficult to extend, but I don't have much experience with it. ASP.Net MVC wise there isn't a huge amount, which isn't surprising considering it's not actually out yet :-)
The main, if rather simple, one is Oxite which is on CodePlex. It wasn't considered a particularly "good example" of MVC when it was first released, but there's been quite a lot of refactoring help from the community so it's worth looking at. It is only a relatively simple blogging thing though, rather than a full on CMS, so don't expect Drupal :-)
I'm currently playing around with the N2 cms. I've not got my head fully around it yet, but you can plug it into web forms or asp.net mvc (they have some sample sites for both platforms). It can use a wide variety of database platforms as well due to nhibernate. It basically sorts out the back end so you can concentrate on the front. N2 cms click here
I can recommend to use MojoPortal, it has a great Framwework and it works perfectly on Linux and Windows :) the url is => http://www.mojoportal.com/
you can also have a look at: http://cmsmvc.codeplex.com/ which is a CMS built using asp.net mvc with plugin and theme support
There is a project going on to port Drupal to .NET platform named Drupal.NET which is currently under development.

Resources