ActiveTopics Fri, 20 Jan 2017 01:27:14 +00:00 umbraco Latests topics from the forum on en Mobile Application: OAuth2 autentication for umbraco members. How to? Hi,

I've do a mobile application ( xamarin ) and Umbraco as content container and member manager. Each member can use its social login to login or register from the mobile app.

How to use OAuth2 with Umbraco 7.5.x?

I've already configure Umbraco with Identity ( ) and works.

Biagio Paruolo Thu, 19 Jan 2017 23:01:16 +00:00
Blog Posts with Carousel Hello, I want to make a website where the user can create content for a blog post, and in that blog post, he can manage a carousel, adding images or videos and displaying it on posts.

Basically, every post will have an unique carousel with unique images and videos.

I've a list view in the content for the blog posts and I think the carousel will have to be a list view as well, but I don't know how can I associate one to each other.

Or is there a way to add the carousel somehow through properties on document types?


Victor Thu, 19 Jan 2017 20:38:10 +00:00
Recycle Bin not showing any deleted items Umbraco v4.7.1 Assembly version 1.0.4281.20201 When I expand the Recycle Bin in content section, it says it's loading and the wheel spins for few seconds then lists the deleted item. But when I expand the recycle bin in the Media section, it loads for about a minute, and when it looks likes its done loading, nothing is listed. There are deleted items and when I click on empty recycle bin, it says there are over 600 items in it. I have also tried reload nodes and it just does the same thing (tries to load for a minute, loading text and the spinning wheel disappears and no deleted nodes are displayed). How do I fix this??

patrick Thu, 19 Jan 2017 18:24:49 +00:00
How to reuse tiny mce/ rich text editor link selector as a normal property type Hi

I was wondering if anyone knows how the tinyMCE/ Rich text editor generates the link selector?

Has anyone been able to recreate this as a normal property type


Nick Thu, 19 Jan 2017 16:56:56 +00:00
How can I get IPublishedContent by doc type? Hi umbracians,

I am storing some email templates(means samples, do not confuse with umbraco templates) in Umbraco back office. At some point I need to send email using this template(subject, body, cc, bcc, etc).

The problem is that I cannot get this content. When I get it by Id everything works fine. But I do not want to rely on id as it changes and decided to use path and cannot do that. I get NullReferenceException when I execute following:

contentCache.GetByRoute(true, "relative path to email template")

relative path looks like "/settings/emailtemplate/registrationtemplate" Can anyone point me that is the problem as I am new to Umbraco and struggling to understand how should I do certain things.

P.S. Before I was trying to find content be doc type alias but again I could not succeed as I could not figure out what is the relation between IContent and IPublishedContent. I could get from ContentService by doc type id but for auto generated models I need to use IPublishedContent

aman Thu, 19 Jan 2017 14:55:39 +00:00
deleted documents still available Hi, This is a similar issue to but I have started a new thread as that is over 18 months old.

we are using umbraco 6.2.5.

We have an issue where media items that are deleted from the media library and the recycle bin are still being indexed and accessed by google, and the links to them are still working.

Is this a known bug? and is there an easy way to identify and remove all these media items?

Many Thanks, Matt

Matt Smith Thu, 19 Jan 2017 14:08:41 +00:00
Courier and Multiple Environments Hey all,

I've been getting a better grasp on understanding the capabilities and limitations of Courier and I was wondering how others may be handling a similar situation. Here's the rundown:

3 Environments, Local, Staging, and Production.

Working upstream works perfectly: Local => Staging => Production. Which makes sense because from what I can tell, Courier is essentially capable of accessing the Umbraco back office on all 3 environments from my local machine.

When working downstream to get back to local however, Courier does not work. I would assume because the staging server obviously doesn't have access to my localhost machine to access the back office.

My question is this, when content population is happening directly on the Staging or Production server. What is the best way of being able to copy down that content? We have a client making continuous updates to their content while we're working on a second phase. Ideally I'd like to be able to use Courier downstream to continuously update content on our local or staging environment, then when ready for launch, simply switch IIS to look at that web project.

Thanks for the help!

Andrew Fedor Thu, 19 Jan 2017 14:01:51 +00:00
Subscribing to events without Visual Studio Hi,

So I am trying to follow the example for subscribing to events outlined here:

However, after watching the related Umbraco TV guide as well ( I realized this is all being done in Visual Studio. Is there a way to get an example, or at least get pointed in the right direction, on how to do this using nothing but a basic text editor and an installation of Umbraco?


Thomas Shetler Thu, 19 Jan 2017 13:17:21 +00:00
Adding Author or new page in blog Hi,

First of all brilliant plugin.

I am a newbie evaluating Umbraco v7.5.7 for one of our website requirement. I have installed articulate package for the blog module. I am planning to include an Author page in blog since it's not available out-of-the-box. The expected behavior is - when a user navigates to a blog post and clicks on Author name, it navigates to an Author page. I could see that PostModel.Author instance has all the necessary information of an author and the requirement is achievable.

My doubts is where should I start;

  1. Should I create DocumentType & Template for Author in backoffice with necessary fields?
  2. Should I add an Author view inside blog directory itself (like App_Plugins\Articulate\Themes\Shazwazza\Views)?

Either way, how should I route my navigation when a user click on Author name in the blogpost. Which is the best approach? Where should I write that piece of code? Please note, I am not looking for Surafce api since it adds /surface/ in the url.

Any help will be appreciated.


Abhilash Ashok Thu, 19 Jan 2017 12:57:11 +00:00
Grid content resets on "save" Hi,

I have a problem when I save content in a grid it just reset the content. The second save will save the content.

Here is a sceencap of the issue:

Best regards Kimtho

kim Thomsen Thu, 19 Jan 2017 12:36:41 +00:00
Converting a Umbraco website implementation to an Umbraco application in Visual Studio Hi,

we have an existing Umbraco site. However, it was not built in a Visual Studio using nuget. It is simply a website using the web installer.

I tried converting it to an application using using online resources to that explain how to convert a website to an application in Visual Studio (not relating to Umbraco though).

It failed with this error when running: Attempt by security transparent method 'Microsoft.Web.Helpers.PreApplicationStartCode.Start()' to access security critical method 'System.Web.WebPages.Razor.WebPageRazorHost.AddGlobalImport(System.String)' failed.

Has anyone tried to successfully do this? Is there anything specific that needs to be done here?

Thanks a lot,

Damon Thu, 19 Jan 2017 11:35:13 +00:00
Upgrading from 7.2.4 to 7.5.7 Hi,

I ran an upgrade from 7.2.4 to 7.5.6. It failed.

First question is, in the latest version of umbraco, you cannot add properties to the properties tab. If you cannot do this and you have properties in your current properties tab, and your current installation has custom properties here, then what is suppose to happen when you upgrade between these versions?

There were other errors but want to an answer to this question first,

Thanks a lot,

Damon Thu, 19 Jan 2017 11:21:22 +00:00
One page navigation. Hi peeps,

I'm kinda new to Umbraco, so I'm not really into all the commands yet.

I'm struggling with a one page, where I have a section called "Cases". Cases does not contain anything, it's just a folder to organize the cases on the page so that it doesn't get messy.

enter image description here

I've tried some solutions, but they don't seem to work..

@foreach (var CaseUnderPage in CurrentPage.Children)
<div class="col-md-3">
<a href="@CaseUnderPage.Url">
<img src="@CaseUnderPage.CaseImage">

Well.. This works, but when I'm gonna add another section with the same function, it's gonna take all the children in home.. So my problem is, that I don't know which code I have to use in this situation.

Morten Eberhardt Lund Thu, 19 Jan 2017 11:12:55 +00:00
Merchello FastTrack: collecting extra user information per-product Hi all.

I'm trying to create products in Merchello which can be sent as e-cards. This means that when a user chooses to buy a product, they need to provide extra information such as email address, the message text and the date to send the card. I'm struggling to work out the best way to achieve this.

I've installed Merchello v2.3.1 and I've downloaded the corresponding code from github. I've installed the FastTrack site, and I've overridden the StoreBasketController, and created my own MVC area. I've created my own implementation of IAddItemModel with the extra fields required. This all works so far.

My plan is to use the AddBasketItem method in my custom StoreBasketController to add the extra data (extended data?) to my product. Later I'll need to retrieve these details from Merchello using a scheduled task of some sort to actually send the e-card.

Am I going about this in a sensible way, or am I missing something simpler? I have never used Merchello before. Any help or advice would be much appreciated.



David Conlisk Thu, 19 Jan 2017 11:11:52 +00:00
Deploying Models builder Hi,

I am just starting to think about the best way to build a site with models builder - and i am thinking about how deployment of the site might work once it's built.

lets assume that i have my build and deployment steps sorted - everything is nugetted and i can get my site and all the files onto a server - and thats all fine.

I am also going to extend the models classes a bit (ala lars-erik's blog excellent blog post) - so i am going to have partials of the model classes in my solution.

So i am looking at the different models for options

Using PureLive Mode - the site won't compile, because the partial classes will be refrencing code that isn't there at build time.

Using DllMode - I get More that one type want to be a model for content type contentPage. as an error when i have partials in the project. and it doesn't give me anything inside visual studio in terms of internalise.

Also i would have to ensure that dll (which isn't part of the solutions build or a nuget thing) is included in any deployments i do and is included in source control (currently the bin folder isn't in source control, because it doesn't have anything i can't generate with nuget/build in it).

using AppData (and moving the folder to app_code) - This works the best, but i need to make sure the generated files in my project to ensure they get deployed.

So I am wondering if anyone else has nice methods for using models builder and deployments ?

Kevin Jump Thu, 19 Jan 2017 11:09:33 +00:00
Document type serialization to share with team Hello guys,

I would like to save the "document types" and "data types" in my solution to be able to push them on GIT and share them with my colleague without creating a package.

Do you know if there is a way to serialize and synchronize them ?

I ask that because we have this functionnality in our Sitecore project, i find that very useful.

Thank you by advance !

Ali Z Thu, 19 Jan 2017 10:29:57 +00:00
Contact form Surface Controller Hi i hope someone can help me, Ive created a contact form. But when i update the email adress in the controller (using a web editor) the changes dont work. Do i have to rebuild in order to change this ?

Best Regards,


jaco Thu, 19 Jan 2017 10:14:35 +00:00
Uploading file for products in basket page I'm new to merchello, umbraco. I want to make an ecommerce site which clients can add design files in basket page before checkout. And also, site owner should download these files from backoffice. I searched and couldn't find how to. Is there a way?

Seref Bilge Thu, 19 Jan 2017 07:06:37 +00:00
Campaign Monitor integration Hi all,

I have been trying to integrate Umbraco Forms to Campaign Monitor, following this post:

It turns out that the approach no longer work for Umbraco Forms since I could not render custom FieldSettingType as well as unable to set prevalues of FieldPreValueSourceType dynamically.

Any idea for integrating new Umbraco Forms to Campaign Monitor would be very appreciated.

Thanks a lot in advanced.


LH Thu, 19 Jan 2017 06:34:16 +00:00
Display child links (submenu) Hi guys!

I currently have a Navigation macro that looks like this:

<ul class="nav navbar-nav navbar-right">
@foreach (var item in selection)
    <li class="@(item.IsAncestorOrSelf(CurrentPage) ? "current" : null)">
        <a href="@item.Url">@item.Name</a>

Works great, however some items have another sublevel. How could I call the children of these links?

Thank you guys! Sorry if its too basic, I have 2 days working with Umbraco :)

Daniel Wed, 18 Jan 2017 22:26:11 +00:00
Pulling document type changes from live to local I accidentally made some changes to document type descriptions on my live site, rather than local. I used git to pull the changes to my local machine, where I am developing in Visual Studio.

I can see the changes I made in the .courier files in data/revision/documenttypes. However, when I run the site, none of the changes appears in the UI. For good measure, I tried restoring content from the live site and republishing the site locally. As I expected, that had no effect.

What am I missing? It seems like there must be a process I need to run on my local machine to update the database from the .courier XML files, but I haven't been able to find documentation in that regard.

Jeff Subat Wed, 18 Jan 2017 21:41:37 +00:00
Property Editor breaking the doctype manager due to Umbraco executing it? Hiya,

So I've built a rather complex property editor for Umbraco but once the property editor was completed, I noticed that I couldn't add it to any doctypes. Umbraco would post back an Automapper error, which is "technically" the correct error but very misleading as the issue was further up the call stack.

Confused, I downloaded the Umbraco source to track down the problem and noticed that the issue was in the class Umbraco.Web.Editors.ContentTypeController, specifically the PostSave(DocumentTypeSave contentTypeSave) function. This function was not able to convert the JSON sent to it correctly.

What I discovered was that my property editor was actually being executed by Umbraco in the doctype manager.

Is that supposed to happen?

Because it was being executed, one of my lines of code in the controller has something like this:

$scope.model.value = {};

(actually the {} represents a more complicated object but for the sake of brevity I've excluded it).

And it's that (I think) that seems to break the save function on the doctype manager. If I removed this code from my controller, Umbraco is able to save the property editor on the doctype.

So my question is two-fold. Firstly, is Umbraco supposed to execute the property editor in the doctype manager?

And second, if that's by design, how on earth can I prevent this being executed in the doctype manager as my calculation of $scope.model.value is breaking it. Am I potentially doing this wrong? I don't really want to have to comment out bits of the property editor every time I want to add it to a doctype :)

Any advice greatly received :)

Bruce Wed, 18 Jan 2017 19:59:07 +00:00
"CustomID" Error when importing records I'm using CMSImport 3.6 on Umbraco 7.1.4 to import a simple CSV file into a Sql Server 2012 database and I'm getting the following error on all rows it tries to import:

Error :Invalid column name 'CustomId'

David Pipkin Wed, 18 Jan 2017 16:13:15 +00:00
Authorize completed orders automatically For the moment, I have to authorize the completed orders myself manually. Afterwards, an email will be send automatically (which works fine).

We now use a test version of Ogone. Is this because we are using a test version, that we have to do this manually?

Or do we have to configure something to authorize the completed order automatically (and send the mail automatically?)

Thanks in advance.enter image description here

Tim Dekkers Wed, 18 Jan 2017 15:35:14 +00:00
simple fixed width crop with imagecropper Ok, this should be simple, but i cant figure it out, and i think the docs are lacking on specifics.

Im trying to do simple image resizing using the cropper, so i just want an image from the cropper, that has a fixed width, eg. 300 pixels.

<img src="@Umbraco.Media(item.GetPropertyValue("billede")).GetCropUrl("galleri")" />

This gives me a crop from a named crop definition. But what if i just want the image to be 300 pixels wide? or if i want a 300x300 image? its described in the docs, but unfortunately not clear enough for me to get it...

Any help?

Claushingebjerg Wed, 18 Jan 2017 15:08:13 +00:00
Site performamce issues during/after CMS import Hi,

We have a web app on Azure and after using CMS import the site is unusable until I restart the app via Azure.

Umbraco is v7.5.0 and CMS Import is Pro version 3.5.2

It's been a while since I've imported due to previous issues but I wanted to start again today as we have made several performance improvements recently.

I tested CMS Import with (CSV file, < 100 items) on our staging setup which is also on Azure. There were no issues here so I tried on our live site with around 30 items in a CSV and the front end froze up during the import process and eventually returned a 503 and was totally unresponsive. I then stopped/started the app and the front end looked fine but editors were unable to save/publish anything in the back office. About an hour later I restarted the app again and all was well.

Can anyone explain what might be going on here? We probably have 10-20 editors max using the back office at any one time and there were <30 site visitors when I ran the import so the only difference between UAT and production appears to be load/users.

I want to try again with no editors just to see what happens but surely a small amount of users would not cause these problems.

I assume CMS import causes a re-index after each import so could that be an issue and is there anything we can do to improve this? There are around 8000 articles on the entire site. BTW, the 30 content items were all imported successfully!

Chris Clancy Wed, 18 Jan 2017 14:57:00 +00:00
reCaptcha on umbraco version 4.7 Hi you guys

How do I add reCaptcha on this form for this old umbraco site.

Im not a .net developer and cant find a way on the internet.

Regards Christian

Christian Hansen Wed, 18 Jan 2017 13:39:57 +00:00
image-text-audio Hi...

I want to make comic story page. On this page I want multiple images, each with text related to image and an audio for each image text. So, is there any package available?

OR how can I implement the same?

hrg Wed, 18 Jan 2017 12:47:41 +00:00
Get MediaUrl Hi guys, I'm newbie in umbraco and i want to ask :

Is there any property that we can get url from Media? Take a look at my attachment:

enter image description here

Thank you very much. Regard, Phong.

Phong Nguyen Dinh Wed, 18 Jan 2017 10:39:30 +00:00
I need to help. I want to change CSS Form in Umbraco? Thanks all I need to help. I want to change CSS Form in Umbraco? Thanks all

Tôn Trưởng Wed, 18 Jan 2017 07:38:49 +00:00
Can i read id from url route in macro? In my application i've a page will have a macro

My general Url is http://localhost/Mylistpage

Works fine if http://localhost/Mylistpage?id=236

for <xsl:param name="qryString" select="umbraco.library:RequestServerVariables('QUERY_STRING')" />

My specific url need to be http://localhost/Mylistpage/236

Just similar to mvc default route, i need to access this 236 in my macro as id parameter in macro

is it possible and how to do that?

Let me know if you need more understanding

Vishmay Wed, 18 Jan 2017 06:27:41 +00:00
Issue with setup and the initial test email Hello PerplexMail,

Ive been struggling to determine how I can customize Umbraco Forms emails so I can have a workflow that goes to a customer, one to marketing, and one to our sales team. Fortunately, Ive found your PerplexMail package for Umbraco and it should be able to do the trick once I get it configured. However, Im running into a couple issues:

(1) I configured the from email, published the nodes that were created and put my email in to send a test email for Thank you, Perplex!. However, I only get a blank email in my inbox none of the content is populated? What am I doing wrong?

(2) How can I get send an email with Perplex or something similar to show up under the Umbraco Forms workflows? This is what I currently see:

enter image description here

Thank you!


Chris Van Oort Tue, 17 Jan 2017 21:50:18 +00:00
Responsive img with Slimsy Hey guys,

I'm using Slimsy to define a image like so:

<img src="@img.GetResponsiveImageUrl(270, 161)" style="width:100%; min-width:100%;" />

I have added an inline style because I read it could fix a problem/bug. But still, my images are being rendered this way, you can see live here

My script priority is:

  1. jQuery
  2. Slimmage Settings
  3. Slimmage
  4. Everything else

Crop sizes enter image description here

How come it doesn't fit?

Mike Tue, 17 Jan 2017 18:53:07 +00:00
Good Razor coding example Hi awesome peeps! I wanted to know if there are any good docs that I can use to learn more about razor coding. I was thinking of using a partial view to handle result of form submission. The result will be dependent on the selection of the form selection by user. Would that be a good way to handle this?

I have this form, the user will select class to register for and based on selection, I will be showing different items on the next page of registration. So I was thinking of use a partial view to show different results on a page. (Using an If statement on selection) Would this be a good approach? Or is there a better way... I'm open to suggestions? :)

Screen: enter image description here

Antoinette Silago Tue, 17 Jan 2017 18:17:04 +00:00
Examine search is not working on my site Hi all I've used Examine a lot on different sites, but I can't get it to work on a site I'm working on. I just get no results whatsoever.

Have you had this problem before?

Can you help please?



Paul Seal from Tue, 17 Jan 2017 13:52:11 +00:00
Mixed languages in umbraco backend Hello all!

The following problem is driving me nuts: We have an umbraco installation with mixed languages in the backend. When I switch the language for my user to "English (United Kingdom)" I still see some german words in the backend, e.g. "Durchsuchen" instead of "Type to search..." in the search box or "Entwickler" instead of "Developer", but not everywhere as you can see in the following screenshot: enter image description here

The default ui language is set to "EN"

<add key="umbracoDefaultUILanguage" value="en" />

Any tips or hints how to fix this?


Looking through packages.config I saw that these additional packages were installed:


I uninstalled them via nuget console, cleared the cache, removed App_Data, bin and obj and cleaned the project, but that still didn't help.

Wolfram Kraus Tue, 17 Jan 2017 12:19:59 +00:00
Merchello Filter groups - Product Filters -> not working? Hi,

I'm starting to use merchello and I discovered the functionality of product groups (as described here: by @rustyswayne on Sep 01, 2016 @ 12:31

I'm trying to get this working, but I can only create such a filter, but not populate it with values. Is there something that I'm missing?

I would really like to use this functionality as it really suits my needs

Thank you in advance!

Tim Schaeps Tue, 17 Jan 2017 09:21:01 +00:00
Package documentation gone? Hi there.

If I click on "Package actions documentation" in Developer > Packages > Package Actions I am sent to a 404:

Anyone know where the documentation has been moved to?

Elitenet Thu, 12 Jan 2017 17:41:28 +00:00
Background image url in grid layout not working I selected background image for row in umbraco CMS from media folder. Url of the image is /media/1001/home.jpg. But in html I get style="background-image:urlmedia1001home.jpg;".

So the result is that image is not displayed.

Configuration for grid layout is: [ { "label": "Set a background image", "description": "Set a row background", "key": "background-image", "view": "imagepicker", "modifier": "url({0})", "applyTo": "row" } ]

In Umbraco CMS database in table cmsContentXml is saved correct URL /media/1001/home.jpg.

I am using clean Umbraco installation without Fanoe or any other Starter Kit template.

Does anybody have the same issue?

Roman Dufek Thu, 12 Jan 2017 14:43:03 +00:00
Default password encryption in Umbraco 7 and overriding it What is the default password encryption in Umbraco 7? Is there possibility to override it? For example if U7 uses SHA1, which is not safe, how can I migrate to SHA256?

aman Tue, 10 Jan 2017 09:30:40 +00:00
Adding ShipmentInfo Hi, I try to add new textArea in the ShipRateQuoteForm. This textArea will let the user enter some custom additional shipping information.

I manage to add my ShippingInfo field in the StoreShipRateQuoteModel, then read it in the SaveShipRateQuote action. But Where I can save it? I add a function in the CheckoutManager.Shipping.SaveShipmentInfo(string info) but now I am stuck. I can't find some documentation on the data model behind merchello. Ideally I need to store this information in the order to be able to display it in the back end section.

Any suggestion?

PierreD Savard Thu, 05 Jan 2017 20:55:07 +00:00
Usync ContentEdition creating new page root duplicates I've been experimenting with Usync ContentEdition to synchronize page content between two Umbraco installations. For the most part, it works but I've noticed a strange tendency for Usync to rather the updating the existing pages, duplicating the entire page tree.

See below images for examples:

SiteA (Empty Umbraco Site express installation with the Fanoe theme)

enter image description here

SiteB after import from SiteA (Dito) enter image description here

As you can see, Usync has created a new top node "Home (1)". What causes this behavior? Is it only after forcing a complete import that this can happen (i don't remember doing it but I suppose it is possible).

Note that the property ID is the same on both sites.

vapenation Tue, 20 Dec 2016 14:15:04 +00:00
Umbraco on Mac Hi

I'm a total newbie to Umbraco and checking it out with regard to a possible work opportunity!

I signed up for a 14 day trial with Umbraco cloud.

I use a Mac so am unable to set up Umbraco locally "as standard" as it were.

What I did see, literally in the last couple of days, is that Microsoft have announced that Web Matrix will be discoontinued now that they have announce Visual Studio Code, which will also run on Mac. Does anyone know if there are any plans for Umbraco to run with Visual Studio Code on Mac? This would stop me buying a PC laptop! :) Advice appreciated!

Many thanks


Graham Thomson Thu, 17 Nov 2016 19:55:21 +00:00
File upload in backoffice custom section While trying to implement a file upload form in a backoffice custom section, I stumbled onto quite a few obstacles and outdated/incorrect information in various forums (not only in Our;-) So, after I finally got it to work, I thought I'd share my solution and code here for anyone else interested.

First of all, you need to have your backoffice custom section up and running. There's a good article about how to do one here. From here, I will assume that you have one called "MySection".

The next thing you'll need is the ng-file-upload AngularJS directive from danialfarid. If you're in Visual Studio, there's a NuGet package called "angular-file-upload" which will install the .js files. Otherwise, get them from GitHub here. Ensure that you have the ng-file-upload-all.js file in your ~/Scripts folder.

ng-file-upload has a lot of functionality (drag-drop, etc.), some of which I may explore later, but for now I opted for a very simple file input control and an upload button. So in your edit.html markup for your custom section something like this:

                <div class="umb-pane">

                <umb-control-group label="File" description="File to upload">
                    <input type="file" class="umb-editor umb-textstring" ngf-select="" ng-model="files" ng-multiple="false" ngf-change="fileSelected(files)" required />

                <div class="umb-tab-buttons" detect-fold>
                    <div class="btn-group">
                        <button type="button" data-hotkey="ctrl+s" class="btn btn-success" ng-click="uploadFile()">

Note the use of the ng- and ngf- attributes. When you select a file (only one in my case), fileSelected(files) is called to store the local path and filename in the $scope. So that when the Upload button is clicked, and fileUpload() is called, it knows what file(s) to upload. I chose to put these two in the edit.controller.js for my section, so add this code:

    $scope.fileSelected = function (files) {
        // In this case, files is just a single path/filename
        $scope.file = files;

    $scope.uploadFile = function () {
        if (!$scope.isUploading) {
            if ($scope.file) {
                $scope.isUploading = true;
                    .then(function (response) {
                        if (response) {
                            notificationsService.success("Success", "Saved to server with the filename " + response);
                        $scope.isUploading = false;
                    }, function (reason) {
                    notificationsService.error("Error", "File import failed: " + reason.message);
                    $scope.isUploading = false;
            } else {
                notificationsService.error("Error", "You must select a file to upload");
                $scope.isUploading = false;

    $scope.file = false;
    $scope.isUploading = false;

Now we need the fileUploadService, which I chose to put in a separate file called file.upload.api.service.js:

.factory("fileUploadService", function ($http) {
    return {
        uploadFileToServer: function (file) {
            var request = {
                file: file
            return $http({
                method: 'POST',
                url: "backoffice/MySection/MySectionApi/UploadFileToServer",
                headers: { 'Content-Type': undefined },
                transformRequest: function (data) {
                    var formData = new FormData();
                    formData.append("file", data.file);
                    return formData;
                data: request
            }).then(function (response) {
                if (response) {
                    var fileName =;
                    return fileName;
                } else {
                    return false;

To make sure the ng-file-upload-all.js and file.upload.api.service.js are loaded, we need to list them in the package.manifest for our section:

javascript: [

Next thing is to implement the actual uploading. I put it in my api controller for the section, i.e. MySectionApiController.cs. Add the following method to your MySectionApiController class:

    public async Task<HttpResponseMessage> UploadFileToServer()
        if (!Request.Content.IsMimeMultipartContent())
            throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);

        string uploadFolder = HttpContext.Current.Server.MapPath("~/App_Data/FileUploads");
        var provider = new CustomMultipartFormDataStreamProvider(uploadFolder);
        var result = await Request.Content.ReadAsMultipartAsync(provider);
        var fileName = result.FileData.First().LocalFileName;
        HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK);
        response.Content = new StringContent(fileName);
        return response;

To override the generated filename, I also added this class (yes, I know this may have a security impact):

public class CustomMultipartFormDataStreamProvider : MultipartFormDataStreamProvider
    public CustomMultipartFormDataStreamProvider(string path) : base(path) { }

    public override string GetLocalFileName(HttpContentHeaders headers)
        return headers.ContentDisposition.FileName.Replace("\"", string.Empty);

And that's about it! (Hope I didn't forget anything. If someone tests it and finds that I did, please don't hesitate to let me know!)

Bendik Engebretsen Wed, 02 Nov 2016 20:41:02 +00:00
Load-Balancing and Umbraco administration Hi all, I know that the recomendation for Umbraco load-balanding systems is to allow the request of /umbraco administration only for one of the servers balanced, but I would like to balance the administration too, so, why that recomendation? what is the reason? and someone has ever done it?

Thanks a lot!

Raúl Wed, 26 Oct 2016 18:37:28 +00:00
String was not recognized as a valid DateTime exception in recently upgraded v7.5.3 site I have a large volume recurring exceptions in the logs on a large v7.5.3 site that was recently upgraded:

2016-10-13 16:39:50,816 [P7708/D5/T156] ERROR ASP._Page_Views_Partials_Slideshow_cshtml - Error in slideshow
System.FormatException: String was not recognized as a valid DateTime.
   at System.DateTime.Parse(String s)
   at Umbraco.Web.PublishedCache.XmlPublishedCache.PublishedMediaCache.DictionaryPublishedContent.<.ctor>b__37(String val)
   at Umbraco.Web.PublishedCache.XmlPublishedCache.PublishedMediaCache.DictionaryPublishedContent.ValidateAndSetProperty(IDictionary`2 valueDictionary, Action`1 setProperty, String[] potentialKeys)
   at Umbraco.Web.PublishedCache.XmlPublishedCache.PublishedMediaCache.DictionaryPublishedContent..ctor(IDictionary`2 valueDictionary, Func`2 getParent, Func`3 getChildren, Func`3 getProperty, XPathNavigator nav, Boolean fromExamine)
   at Umbraco.Web.PublishedCache.XmlPublishedCache.PublishedMediaCache.CreateFromCacheValues(CacheValues cacheValues)
   at Umbraco.Web.PublishedCache.ContextualPublishedCache`1.GetById(Boolean preview, Int32 contentId)
   at Umbraco.Web.PublishedContentQuery.TypedDocumentById(Int32 id, ContextualPublishedCache cache)
   at Our.Umbraco.PropertyConverters.MultipleMediaPickerPropertyConverter.ConvertSourceToObject(PublishedPropertyType propertyType, Object source, Boolean preview)
   at Umbraco.Web.PublishedCache.XmlPublishedCache.XmlPublishedProperty.get_Value()
   at Umbraco.Web.PublishedPropertyExtension.GetValue[T](IPublishedProperty property, Boolean withDefaultValue, T defaultValue)
   at Umbraco.Web.PublishedContentExtensions.GetPropertyValue[T](IPublishedContent content, String alias)
   at ASP._Page_Views_Partials_Slideshow_cshtml.<>c__DisplayClass1.<RenderSlide>b__0(TextWriter __razor_helper_writer) in e:\inetpub\\Views\Partials\Slideshow.cshtml:line 166
   at ASP._Page_Views_Partials_Slideshow_cshtml.Execute() in e:\inetpub\\Views\Partials\Slideshow.cshtml:line 94

It looks like this happens after MultipleMediaPickerPropertyConverter tries to call ConvertSourceToObject.

Any ideas?

Simon Dingley Thu, 13 Oct 2016 16:03:45 +00:00
Check if node has been saved and published in property editor Hello,

I'm creating a property editor which shows the urls of the current node. It does the exact same thing as Link to document on the Properties tab, but our users want to see the urls on the first tab instead of the last tab.

I've already got it working, but the problem is that if you update the node name (or in this example the Url segment) the property editor isn't updated and still shows the old urls until you reopen the node. Can I check in the property editor if the save and publish button has been clicked and everything is updated?

enter image description here


Jeroen Breuer Mon, 01 Feb 2016 09:44:35 +00:00
Umbraco Identity for log in using Google or Facebook I installed the UmbracoIdentity package (Install-Package UmbracoIdentity) and the extensions for google and facebook in order to be able to login using facebook or google. I used the Account.cshtml which included in the package in order to login using the new package that I installed. In the Startup.Auth.cs that automatically created when I installed the package I inserted the following lines in order to enable the Facebook Authentication.

             appId: "296106450571102",
             appSecret: "bde97767dee96e743cbc364bbb39852d");

The problem is that when I display the contents on the browser the equivalent button does not appear on the screen. When I do it on a classic ASP.NET MVC 5 application it works fine. The button appears on the screen. Can someone help me and tell me if I have to do something extra in order to make it work.

I spent the entire day trying to find a tutorial for beginners in order to make it work but it was not successful.

Giorgos Tue, 19 Jan 2016 13:30:45 +00:00
Umbraco 7.3.0 Identity provider - can't get Google OAuth to work Hi,

I want to link a Google Account to my BackOffice User to enable authentication via Google.

What I've done is:

  • Create Empty MVC 4 Web project in VS2013 Install Nuget Package
  • Umbraco CMS 7.3.0-beta Install Nuget Package
  • UmbracoCms.IdentityExtensions -Pre Install Nuget Package
  • UmbracoCms.IdentityExtensions.Google -Pre

My Google app uses these settings:

In the owin startup class I added this line in the configure method:

app.ConfigureBackOfficeGoogleAuth([app id], [app secret]);

When I click on the "Link Google Account" button on my profile I get redirected to /umbraco.

In fiddler I see this:

Fiddler umbraco redirect

When I log out after that, the login page shows: "An error occurred, could not get external login info"

Jan Vanuytrecht Tue, 30 Jun 2015 20:47:37 +00:00
Unable To Upgrade When Using Unity IOC - The type UmbracoContext does not have an accessible constructor I have an existing v7.1.3 project which has been running fine. I thought I would upgrade it to v7.1.4. I copied across the bin folder and the two umbraco folders. 

When I browse to the site I get the following error (Full YSOD at bottom of post)

The type UmbracoContext does not have an accessible constructor

I am using Unity in the project for the IOC and it's running in an MVC way, we hijack the route and pass in our own models etc... Looking at the stack trace, Unity is kicking in on install and trying to resolve the UmbracoContext which is not setup in Unity (I haven't had an issue previously before the upgrade).

So I thought I would try adding the following in my Unity bootstrapper:

container.RegisterInstance(typeof(UmbracoContext), UmbracoContext.Current);

Now this stops the YSOD, but when it asks me to login to continue the upgrade. I can't login. The page just refreshes and goes straight back to the login page with no errors or messages? 

Hence I'm now stuck... Any advice / help appreciated.

Full stack trace

Server Error in '/' Application.
The type UmbracoContext does not have an accessible constructor.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 
Exception Details: System.InvalidOperationException: The type UmbracoContext does not have an accessible constructor.
Source Error: 
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace: 
[InvalidOperationException: The type UmbracoContext does not have an accessible constructor.]
   Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.ThrowForNullExistingObject(IBuilderContext context) +239
   lambda_method(Closure , IBuilderContext ) +60
   Microsoft.Practices.ObjectBuilder2.<>c__DisplayClass1.<GetBuildMethod>b__0(IBuilderContext context) +71
   Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(IBuilderContext context) +42
   Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(IBuilderContext context) +333
   Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context) +274
   Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(NamedTypeBuildKey newBuildKey) +250
   Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(IBuilderContext context) +101
   lambda_method(Closure , IBuilderContext ) +209
   Microsoft.Practices.ObjectBuilder2.<>c__DisplayClass1.<GetBuildMethod>b__0(IBuilderContext context) +71
   Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(IBuilderContext context) +42
   Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(IBuilderContext context) +333
   Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context) +274
   Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerable`1 resolverOverrides) +384

[ResolutionFailedException: Resolution of the dependency failed, type = "Umbraco.Web.Install.Controllers.InstallController", name = "(none)".
Exception occurred while: while resolving.
Exception is: InvalidOperationException - The type UmbracoContext does not have an accessible constructor.
At the time of the exception, the container was:

  Resolving Umbraco.Web.Install.Controllers.InstallController,(none)
  Resolving parameter "umbracoContext" of constructor Umbraco.Web.Install.Controllers.InstallController(Umbraco.Web.UmbracoContext umbracoContext)
    Resolving Umbraco.Web.UmbracoContext,(none)
   Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerable`1 resolverOverrides) +447
   Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, String name, IEnumerable`1 resolverOverrides) +50
   Microsoft.Practices.Unity.UnityContainer.Resolve(Type t, String name, ResolverOverride[] resolverOverrides) +48
   Microsoft.Practices.Unity.UnityContainerExtensions.Resolve(IUnityContainer container, Type t, ResolverOverride[] overrides) +61
   Unity.Mvc4.UnityDependencyResolver.GetService(Type serviceType) +189
   System.Web.Mvc.DefaultControllerActivator.Create(RequestContext requestContext, Type controllerType) +41

[InvalidOperationException: An error occurred when trying to create a controller of type 'Umbraco.Web.Install.Controllers.InstallController'. Make sure that the controller has a parameterless public constructor.]
   System.Web.Mvc.DefaultControllerActivator.Create(RequestContext requestContext, Type controllerType) +179
   System.Web.Mvc.DefaultControllerFactory.GetControllerInstance(RequestContext requestContext, Type controllerType) +80
   System.Web.Mvc.DefaultControllerFactory.CreateController(RequestContext requestContext, String controllerName) +74
   Umbraco.Web.Mvc.MasterControllerFactory.CreateController(RequestContext requestContext, String controllerName) +196
   System.Web.Mvc.MvcHandler.ProcessRequestInit(HttpContextBase httpContext, IController& controller, IControllerFactory& factory) +197
   System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContextBase httpContext, AsyncCallback callback, Object state) +49
   System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContext httpContext, AsyncCallback callback, Object state) +50
   System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData) +16
   System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +301
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155


Lee Fri, 20 Jun 2014 10:52:20 +00:00