Sitecore Basics - sitecore

I am quite new to Sitecore WCM and have been doing a lot of research and readings. Could someone please help me to clarify the following
basics of Sitecore?
I've a number of ASP.net web applications. If I convert the project to Sitecore project will it just work magically?
If I want to create new site, do I need to manually create a new site in IIS or Sitecore does it when I publish?
Are there any online training videos available, could not find a single (except Sitecore marketing demo).
If we have MVC and Web forms applications, is it possible to migrate to Sitecore?

First off, welcome to Sitecore!
Regarding your questions:
I've a number of ASP.net web application. If I convert the project to Sitecore project will it just work magically?
A Sitecore website is an asp.net web application. It just happens to start off with databases, DLLs, and web.config entries that are ready for you to get the CMS up and running. Standard .NET code works just as normal. However, part of what happens when you first setup your site as a Sitecore website is that Sitecore starts intercepting requests for pages and attempts to bind them to pages in the content tree. If a content item doesn't exist with the matching path, it won't return.
This is particularly important if you plan on just standing up your existing pages alongside new Sitecore pages. Your URLs won't initially work, and you'll have to do some configuration to get them to resolve and be ignored by Sitecore.
However, if you do NOT want to put your pages alongside the site and instead integrate them into the Sitecore solution as content items, you'll likely need to re-architect your solution. Sitecore uses 'sublayouts' (ASCX) for different components on a page, and these need to be represented in the database and the code base, and then added to content items as part of their presentation details. This can be easy, if your site is already heavily architected towards components, but sometimes you'll need to create a bunch of ASCX to represent your different pages.
Your business logic should not be affected, unless you decide to make changes to start leveraging configurations in the Sitecore database or accessing properties of the current context item. In this manner, your code should execute "out-of-the-box".
If I want to create new site do I need to manually create a new site in IIS or Sitecore does it when I publish?
Sitecore doesn't "create" anything when it publishes. Publishing is really just an action of taking the content approved in the Master database and pushing it out to the Web database for the selected target. Your IIS sites, and anything else you need for your application, you just setup as you normally would.
Are there any online training videos available, could not find a single (except Sitecore marketing demo).
I highly recommend taking the developer training that Sitecore provides. It's a very good introduction to the concepts, especially if you aren't working with folks who have a lot of Sitecore expertise. It also allows you to meet some other folks who are getting into Sitecore and you can help each other out.
If we have MVC and Web forms applications, is it possible to migrate to Sitecore?
Sitecore is a .NET application at its core, and web forms work. MVC is also supported with the most recent versions of Sitecore.

I know this question is a little old, and already answered, but I think I have some info to add.
I've a number of ASP.net web application. If I convert the project to Sitecore project will it just work magically?
Nothing is magic. If you want the content management or marketing aspects of Sitecore, plan on rebuilding your site(s) within Sitecore.
If I want to create new site do I need to manually create a new site in IIS or Sitecore does it when I publish?
Sitecore is an IIS site. When you install Sitecore, it creates an IIS site along with at least 3 databases (core, master, & web). Sitecore can have multiple subsites, but they're all built within the single IIS site that is Sitecore.
Are there any online training videos available, could not find a single (except sitecore marketing demo).
These videos may not have existed when this question was originally answered...so here's a few I found useful.
Sitecore Training: Developer Fundamental Series - Creating Visual Studio Project for Sitecore
Sitecore MVC - Getting Started (Part 1)
Sitecore MVC -- View Renderings, #Html().Sitecore, and Models
If we have MVC and Web forms applications, is it possible to migrate to site core?
Webforms and MVC are both supported in Sitecore. You will be thinking of both of them in a different way whenever you are rebuilding them in Sitecore though.

1) You can create blank solution and add existing items like sublayout, css , javascript etc and obviously need to change some codebehind. But sitecore has different database structure compared to normal web applications , so you will need to create template, items etc.
2) For sitecore , you will need to create website in IIS and make entry in your host file as follows:
local path C:\Windows\System32\drivers\etc find hosts file and in that file add entry as
127.0.0.1 yoursitename.com
3) For demo video you can try Sitecore channel videos for basic sitecore learning from Youtube.

Related

Does Sitecore Personalize replace my current Sitecore CMS

we currently use Sitecore 9.x CMS and are looking to adopt Sitecore Personalize/CDP
Does Sitecore Personalize/CDP replace our Sitecore 9.x CMS or do they work together
If it is a replacement then our Project Managers have a bigger job on their hands than they currently think
thanks
Sitecore Personalize/CDP is not a CMS. It's a CDP, Customer Data Platform.
You use it for personalization, profiling and can use that to create various experiences directly - or use it to feed that data to other systems as well as gathering data from other system so you get a full view/profile of the users/customers.
You should more compare sitecore CDP to personalization in Sitecore XP/xDB.
So you can use Sitecore CDP with you current Sitecore XP is you want to. Note that Sitecore CDP can be used with any platform basically, also non-Sitecore.

Is web control renderings supported by Sitecore MVC in Sitecore 8.1?

I have found out that Sitecore web control rendering is not supported by Sitecore MVC, which is only supported by Sitecore web forms, appreciate if somebody give me better understanding,
Reference link
http://www.sitecore.net/learn/blogs/technical-blogs/john-west-sitecore-blog/posts/2012/06/mvc-renderings-and-renderers-in-the-sitecore-aspnet-cms.aspx
https://sdn.sitecore.net/Articles/Web%20Controls/Building%20Web%20Controls%20-%20Part%201.aspx
You cannot mix and match Webforms/MVC in a single request, so all renderings on a single item need to be either Webforms or MVC only.
The best solution is to migrate the solution to MVC, if you can't do that all at once then build out the site section by section to move to MVC, there is no issue having both a Webforms and MVC solution running side by side, just not in the same request.
You can override the out of the box behaviour using techniques such as Mixing Sublayout with Rendering – Webforms with MVC request or Using Sitecore MVC components on WebForms pages however these are not supported by Sitecore and everything may not work as expected, but it may be an option if there is no other possibility.

TeamCity integration with Sitecore CMS

Is there any out-of-the-box feature available to integrate Sitecore CMS with TeamCity? I checked the list of runners available, but I don't seem to find any.
My customer has a ASP.NET project and uses Sitecore CMS for the website. I am trying to build a pipe to automatically trigger a build at a certain time of the week and deploy to Sitecore. Any help is appreciated.
Deploying Sitecore is much like deploying any standard .NET web application, except for the content.
I've written a blog post on automating your deployments with TeamCity and Team Development for Sitecore (TDS). You can ignore the TDS-specific information if you are looking just to push the code. However, if you plan on deploying content items immediately, TDS is helpful for that.
There is also a post by Jason Bert that covers using OctoDeploy with TeamCity and TDS for continuous deployment.
You may want to just start by setting up a standard .NET MSBuild step and then deploying the build of the code out to your site. That will get you started and then you can begin to tweak from there and choose which other tools will fit your needs.

How to create web services for uploading image in drupal 7

Hello I am new in web services(Drupal 7) I want to know to create the web services for uploading images.I searched but could not find.I am using REST services.Please help me.
Using Drupal to upload images
Since Drupal 7 image handling is part of Drupal core, and there are responsive themes designed for smart phones, you don't need additional contributed modules to upload images from within drupal as a content contributor and your phone as a web browser.
Here is a short step by step:
Choose Administration > Add content > [Content type].
The image field will be displayed in the list of fields once you've
added it to the content type (see above). Click 'Browse', then
select and upload the desired image.
Enter alternate text to improve accessibility and optimize it for
search engines.
Save the article.
Images can be added and removed from the node's Edit tab. If the
node is deleted, all associated images are deleted with it.
Using Android to upload images
I believe this option would start as an architecture design decision and a price point. For example, you could use the Drupal Services module to open up REST and XML-RPC options from the drupal platform to your Android application. Next, you could choose to develop a native app for android to upload images into drupal's database for use in various applications. Or, you might consider a jQuery Mobile browser app that might be much simpler and less costly to build.
Two references:
Google I/O 2010 - Android REST client applications (to mate with Drupal's Service module) 1 hour video: http://www.youtube.com/watch?v=xHXn3Kg2IQE
Drupal 7 Mobile Web Development (A Beginner's Guide they jokingly claim), by Tom Stovall, Chapter 8: The Drupal Services Module for mobile apps): http://www.amazon.com/Drupal-Mobile-Development-Beginners-Guide-ebook/dp/B007K7UL2S

Redmine project data for all projects

I am working on creating a dashboard which would access Redmine project data. This dashboard will be a consolidation of project data (delivery date, manager, start date, total issues, open issues, closed issues, bug count etc.) for all projects in the Redmine database.
Any ideas on how to do this? An SQL query to achieve this would be a good start. I have Redmine setup on my local system and can access the Redmine database.
I plan on creating an HTML5 .Net based web application. Once I figure out the queries to be used, I would write an IIS (or REST) service to fetch the desired data from the Redmine production database.
Any help/pointers would be deeply appreciated.
Regards,
Pranjal
You have basically three options:
use the REST API
develop a redmine plug-in
do some custom SQL stuff
REST API
The best you could do is to use the redmine REST API. Using it, you can fetch the data directly from redmine without any SQL queries or manipulating the server. It should even work when the redmine server is updated.
Redmine Plug-in
The next best thing is probably to develop a redmine plug-in. Your plug-in can access redmine classes (Project, User, etc.). For example, you could do something like Projects.all.map {|p| [p.id, p.identifier]} to get the id and identifier of all projects in an array. This approach is way more powerful than using the REST API, but you have to modify the redmine server (install and maintain your plug-in). A plug-in is probably more fragile when redmine changes internal structures, than the REST API.
Custom SQL stuff
I do not recommend developing custom SQL solutions, but it is an option. Such a solution is harder to develop, more fragile, harder to set up, but might offer better performance.
You can see the the redmine database structure listed in db/schema.rb. Having the right schema, you could develop your custom SQL queries and return them to your dashboard.
Think about security
Apart from the usual security stuff (which you should consider too :)), remember that redmine has a rich permission system. Consider which object you make (publicly) available. This is most important for the last two options. When using the plug-in approach, you should have a look at the User#allowed_to method.
With the little information I have about your requirements, I have the feeling that you should go for the REST API.