Quantcast
Channel: Optimizely Search & Navigation
Viewing all 6894 articles
Browse latest View live

Active Directory B2C - CMS Notifications

$
0
0

Hi,

I was wondering if any one could help point me in the right direction.

I am working upon an implementation of the Episerver Notifications where by when content in published it notifies all users in a certain group the content has changed.

The issue I have is we are using Azure Active Directory B2C for authentication and the users I need are in the 'tblScheduledUsers'. When I looked into using the ISynchronizingUserService to get all users in roles, it doesn't appear to have this method.

I was therefore wondering if anyone could suggest the correct interface to use / method?

Thanks

Paul


The model item passed into the dictionary is of type 'Castle.Proxies.StartPageProxy', but this dictionary requires a model item of type 'x'

$
0
0

Hi all, I'm a beginner just learning how to use Episerver and I was doing the free online training course and after doing one particular exercise I keep getting this error when I go to the start page of my episerver site:

The model item passed into the dictionary is of type 'Castle.Proxies.StartPageProxy', but this dictionary requires a model item of type 'AlloyTraining.Models.ViewModels.PageViewModel`1[AlloyTraining.Models.Pages.StartPage]'.

The edit page works, but the live view does not.   Anyone know how to fix this?

Relevant files:
...\AlloyTraining\Views\StartPage\Index.cshtml

@using AlloyTraining.Models.ViewModels
@using EPiServer.Web.Mvc.Html
@model PageViewModel<AlloyTraining.Models.Pages.StartPage><h1 @Html.EditAttributes(m => m.CurrentPage.Heading)>
    @(Model.CurrentPage.Heading ?? Model.CurrentPage.Name)</h1><div>
    @Html.PropertyFor(m => m.CurrentPage.MainBody)</div><div>
    @Html.PropertyFor(m => m.CurrentPage.MainContentArea)</div>

...\AlloyTraining\Models\Pages\StartPage.cs

using System;
using System.ComponentModel.DataAnnotations;
using AlloyTraining.Views;
using EPiServer.Core;
using EPiServer.DataAbstraction;
using EPiServer.DataAnnotations;
using EPiServer.SpecializedProperties;
namespace AlloyTraining.Models.Pages
{
    [ContentType(DisplayName = "StartPage", 
        GroupName = SiteGroupNames.Specialized,
        Order = 10,
        GUID = "fd956a78-f398-42bd-a9c0-8bf79d5df96c", 
        Description = "The home page for a webiste with an area for blocks and partial pages")]
    [SiteStartIcon]
    public class StartPage : SitePageData
    {
        [CultureSpecific]
        [Display(
            Name = "Heading",
            Description = "If the headeing is not set, the pages falls aback to showing the name.",
            GroupName = SystemTabNames.Content,
            Order = 10)]
        public virtual string Heading { get; set; }
        [CultureSpecific]
        [Display(
            Name = "Main body",
            Description = "The main body will be shown in the main content area of the page, using the XHTML-editor you can insert for example text, images and tables.",
            GroupName = SystemTabNames.Content,
            Order = 20)]
        public virtual XhtmlString MainBody { get; set; }
        [CultureSpecific]
        [Display(
            Name = "Main Content Area",
            Description = "The main body will be shown in the main content area of the page, using the XHTML-editor you can insert for example text, images and tables.",
            GroupName = SystemTabNames.Content,
            Order = 30)]
        public virtual XhtmlString MainContentArea { get; set; }
        [CultureSpecific]
        [Display(Name = "Footer text",
            Description = "The footer text will be shown at the bottom of every page.",
            GroupName = SiteTabNames.SiteSettings, Order = 10)]
        public virtual string FooterText { get; set; }
    }
}

...\AlloyTraining\Controllers\PageControllerBase.cs

using AlloyTraining.Business.ExtensionMethods;
using AlloyTraining.Models.Pages;
using AlloyTraining.Models.ViewModels;
using EPiServer;
using EPiServer.Core;
using EPiServer.Filters;
using EPiServer.Web.Mvc;
using System.Linq;
using System.Web.Mvc;
using System.Web.Security;
namespace AlloyTraining.Controllers
{
    public abstract class PageControllerBase<T>
        : PageController<T> where T : SitePageData
    {
        protected readonly IContentLoader loader;
        public PageControllerBase(IContentLoader loader)
        {
            this.loader = loader;
        }
        public ActionResult Logout()
        {
            FormsAuthentication.SignOut();
            return RedirectToAction("Index");
        }
        protected IPageViewModel<TPage> CreatePageViewModel<TPage>(
            TPage currentPage) where TPage : SitePageData
        {
            var viewmodel = PageViewModel.Create(currentPage);
            viewmodel.StartPage = loader.Get<StartPage>(ContentReference.StartPage);
            viewmodel.MenuPages = FilterForVisitor.Filter(
                loader.GetChildren<SitePageData>(ContentReference.StartPage))
                .Cast<SitePageData>().Where(page => page.VisibleInMenu);
            viewmodel.Section = currentPage.ContentLink.GetSection();
            return viewmodel;
        }
    }
}

...\AlloyTraining\Models\Pages\StartPageController.cs

using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using AlloyTraining.Models.Pages;
using EPiServer;
using EPiServer.Core;
using EPiServer.Framework.DataAnnotations;
using EPiServer.Web.Mvc;
namespace AlloyTraining.Models.Pages
{
    public class StartPageController : PageController<StartPage>
    {
        public ActionResult Index(StartPage currentPage)
        {
            /* Implementation of action. You can create your own view model class that you pass to the view or
             * you can pass the page type for simpler templates */
            return View(currentPage);
        }
    }
}

Not really sure what file is messing things up or where to look.


Here is the full error if that helps:

Server Error in '/' Application.
The model item passed into the dictionary is of type 'Castle.Proxies.StartPageProxy', but this dictionary requires a model item of type 'AlloyTraining.Models.ViewModels.PageViewModel`1[AlloyTraining.Models.Pages.StartPage]'.
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 model item passed into the dictionary is of type 'Castle.Proxies.StartPageProxy', but this dictionary requires a model item of type 'AlloyTraining.Models.ViewModels.PageViewModel`1[AlloyTraining.Models.Pages.StartPage]'.
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 model item passed into the dictionary is of type 'Castle.Proxies.StartPageProxy', but this dictionary requires a model item of type 'AlloyTraining.Models.ViewModels.PageViewModel`1[AlloyTraining.Models.Pages.StartPage]'.]
   System.Web.Mvc.ViewDataDictionary`1.SetModel(Object value) +175
   System.Web.Mvc.ViewDataDictionary..ctor(ViewDataDictionary dictionary) +107
   System.Web.Mvc.WebViewPage`1.SetViewData(ViewDataDictionary viewData) +49
   System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) +99
   System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer) +107
   System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) +291
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext, ActionResult actionResult) +13
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +56
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) +52
   System.Web.Mvc.Async.<>c__DisplayClass3_6.<BeginInvokeAction>b__4() +198
   System.Web.Mvc.Async.<>c__DisplayClass3_1.<BeginInvokeAction>b__1(IAsyncResult asyncResult) +100
   System.Web.Mvc.Async.WrappedAsyncResult`1.CallEndDelegate(IAsyncResult asyncResult) +10
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +27
   System.Web.Mvc.<>c.<BeginExecuteCore>b__152_1(IAsyncResult asyncResult, ExecuteCoreState innerState) +11
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +29
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +45
   System.Web.Mvc.<>c.<BeginExecute>b__151_2(IAsyncResult asyncResult, Controller controller) +13
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +22
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +26
   System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) +10
   System.Web.Mvc.<>c.<BeginProcessRequest>b__20_1(IAsyncResult asyncResult, ProcessRequestState innerState) +28
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +29
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +28
   System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +9
   System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +577
   System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) +132
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +163

Ignore Base ContentAPI Model properties from JSON response

$
0
0

Could some one point me to documentation on how to ignore base API properties like (languages etc). For custom page properties I could use DefaultContentConverters ShouldPropertyBeIgnored method.

Is there anything for base model properties too?

SQL command timeout when importing catalog.xml

$
0
0

Epi commerce 9.16

We are using the inRiver integration to import the product catalog. When the catalog meta data in epi is clean and the catalog.xml is sent over to epi the catalog data gets imported and everyone is happy. But subsequent imports of the full catalog structure ends in SQL command timeouts. We have tried to decrease the catalogImportBatchSize and set the commandTimeout but with no luck. Any more ideas out there?

2016-06-23 03:32:43,323 [47] ERROR inRiver.EPiServerCommerce.Import.InriverDataImportController: Catalog Import Failed
System.Data.SqlClient.SqlException (0x80131904): Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding. This failure occurred while attempting to connect to the routing destination. The duration spent while attempting to connect to the original server was - [Pre-Login] initialization=1; handshake=15; [Login] initialization=0; authentication=0; [Post-Login] complete=1; ---> System.ComponentModel.Win32Exception (0x80004005): The wait operation timed out
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at EPiServer.Data.Providers.SqlTransientErrorsRetryPolicy.Execute[TResult](Func`1 method)
at Mediachase.Data.Provider.SqlDataProvider.ExecuteNonExec(DataCommand command)
at Mediachase.MetaDataPlus.Common.DBHelper.ExecuteNonQuery(String connectionString, CommandType commandType, String commandText, Int32 commandTimeout, DataParameter[] commandParameters)
at Mediachase.MetaDataPlus.Common.DBHelper.ExecuteNonQuery(String connectionString, CommandType commandType, String commandText, DataParameter[] commandParameters)
at Mediachase.Commerce.Catalog.Data.CatalogEntryAdmin.Save()
at Mediachase.Commerce.Catalog.Managers.CatalogEntryManager.SaveCatalogEntry(CatalogEntryDto dataset)
at Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.SaveEntryDto(CatalogEntryDto workingCatalogEntryDto, Dictionary`2 metaObjectsList, Dictionary`2 priceGroups, Dictionary`2 warehouseInventories)
at Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.ReadEntries(Guid applicationId, Int32 catalogId, XmlReader reader, String baseFilePath, Int32 totalCount, String defaultCurrency, Boolean overwrite, IEnumerable`1 catalogLanguages)
at Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.Import(Stream input, Guid applicationId, String baseFilePath, Boolean overwrite)
at inRiver.EPiServerCommerce.Import.InriverDataImportController.ImportCatalogXmlWithHandlers(Stream catalogXml, IEnumerable`1 catalogImportHandlers)
at inRiver.EPiServerCommerce.Import.InriverDataImportController.ImportCatalogXml(String path)
ClientConnectionId:1e33a6e3-68bb-4431-a86a-d686d6fd4b8e
Error Number:-2,State:0,Class:11
ClientConnectionId before routing:87a16f53-a5a8-4a75-858a-87672ec65a16
Routing Destination:b495ff6b49fe.tr16.eastus1-a.worker.database.windows.net,11016

The model item passed into the dictionary is of type 'Castle.Proxies.StartPageProxy', but this dictionary requires a model item of type 'x'

$
0
0

Hi all, I'm a beginner just learning how to use Episerver and I was doing the free online training course and after doing one particular exercise I keep getting this error when I go to the start page of my episerver site:

The model item passed into the dictionary is of type 'Castle.Proxies.StartPageProxy', but this dictionary requires a model item of type 'AlloyTraining.Models.ViewModels.PageViewModel`1[AlloyTraining.Models.Pages.StartPage]'.

The edit page works, but the live view does not.   Anyone know how to fix this?

Relevant files:
...\AlloyTraining\Views\StartPage\Index.cshtml

@using AlloyTraining.Models.ViewModels
@using EPiServer.Web.Mvc.Html
@model PageViewModel<AlloyTraining.Models.Pages.StartPage><h1 @Html.EditAttributes(m => m.CurrentPage.Heading)>
    @(Model.CurrentPage.Heading ?? Model.CurrentPage.Name)</h1><div>
    @Html.PropertyFor(m => m.CurrentPage.MainBody)</div><div>
    @Html.PropertyFor(m => m.CurrentPage.MainContentArea)</div>

...\AlloyTraining\Models\Pages\StartPage.cs

using System;
using System.ComponentModel.DataAnnotations;
using AlloyTraining.Views;
using EPiServer.Core;
using EPiServer.DataAbstraction;
using EPiServer.DataAnnotations;
using EPiServer.SpecializedProperties;
namespace AlloyTraining.Models.Pages
{
    [ContentType(DisplayName = "StartPage", 
        GroupName = SiteGroupNames.Specialized,
        Order = 10,
        GUID = "fd956a78-f398-42bd-a9c0-8bf79d5df96c", 
        Description = "The home page for a webiste with an area for blocks and partial pages")]
    [SiteStartIcon]
    public class StartPage : SitePageData
    {
        [CultureSpecific]
        [Display(
            Name = "Heading",
            Description = "If the headeing is not set, the pages falls aback to showing the name.",
            GroupName = SystemTabNames.Content,
            Order = 10)]
        public virtual string Heading { get; set; }
        [CultureSpecific]
        [Display(
            Name = "Main body",
            Description = "The main body will be shown in the main content area of the page, using the XHTML-editor you can insert for example text, images and tables.",
            GroupName = SystemTabNames.Content,
            Order = 20)]
        public virtual XhtmlString MainBody { get; set; }
        [CultureSpecific]
        [Display(
            Name = "Main Content Area",
            Description = "The main body will be shown in the main content area of the page, using the XHTML-editor you can insert for example text, images and tables.",
            GroupName = SystemTabNames.Content,
            Order = 30)]
        public virtual XhtmlString MainContentArea { get; set; }
        [CultureSpecific]
        [Display(Name = "Footer text",
            Description = "The footer text will be shown at the bottom of every page.",
            GroupName = SiteTabNames.SiteSettings, Order = 10)]
        public virtual string FooterText { get; set; }
    }
}

...\AlloyTraining\Controllers\PageControllerBase.cs

using AlloyTraining.Business.ExtensionMethods;
using AlloyTraining.Models.Pages;
using AlloyTraining.Models.ViewModels;
using EPiServer;
using EPiServer.Core;
using EPiServer.Filters;
using EPiServer.Web.Mvc;
using System.Linq;
using System.Web.Mvc;
using System.Web.Security;
namespace AlloyTraining.Controllers
{
    public abstract class PageControllerBase<T>
        : PageController<T> where T : SitePageData
    {
        protected readonly IContentLoader loader;
        public PageControllerBase(IContentLoader loader)
        {
            this.loader = loader;
        }
        public ActionResult Logout()
        {
            FormsAuthentication.SignOut();
            return RedirectToAction("Index");
        }
        protected IPageViewModel<TPage> CreatePageViewModel<TPage>(
            TPage currentPage) where TPage : SitePageData
        {
            var viewmodel = PageViewModel.Create(currentPage);
            viewmodel.StartPage = loader.Get<StartPage>(ContentReference.StartPage);
            viewmodel.MenuPages = FilterForVisitor.Filter(
                loader.GetChildren<SitePageData>(ContentReference.StartPage))
                .Cast<SitePageData>().Where(page => page.VisibleInMenu);
            viewmodel.Section = currentPage.ContentLink.GetSection();
            return viewmodel;
        }
    }
}

...\AlloyTraining\Models\Pages\StartPageController.cs

using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using AlloyTraining.Models.Pages;
using EPiServer;
using EPiServer.Core;
using EPiServer.Framework.DataAnnotations;
using EPiServer.Web.Mvc;
namespace AlloyTraining.Models.Pages
{
    public class StartPageController : PageController<StartPage>
    {
        public ActionResult Index(StartPage currentPage)
        {
            /* Implementation of action. You can create your own view model class that you pass to the view or
             * you can pass the page type for simpler templates */
            return View(currentPage);
        }
    }
}

Not really sure what file is messing things up or where to look.


Here is the full error if that helps:

Server Error in '/' Application.
The model item passed into the dictionary is of type 'Castle.Proxies.StartPageProxy', but this dictionary requires a model item of type 'AlloyTraining.Models.ViewModels.PageViewModel`1[AlloyTraining.Models.Pages.StartPage]'.
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 model item passed into the dictionary is of type 'Castle.Proxies.StartPageProxy', but this dictionary requires a model item of type 'AlloyTraining.Models.ViewModels.PageViewModel`1[AlloyTraining.Models.Pages.StartPage]'.
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 model item passed into the dictionary is of type 'Castle.Proxies.StartPageProxy', but this dictionary requires a model item of type 'AlloyTraining.Models.ViewModels.PageViewModel`1[AlloyTraining.Models.Pages.StartPage]'.]
   System.Web.Mvc.ViewDataDictionary`1.SetModel(Object value) +175
   System.Web.Mvc.ViewDataDictionary..ctor(ViewDataDictionary dictionary) +107
   System.Web.Mvc.WebViewPage`1.SetViewData(ViewDataDictionary viewData) +49
   System.Web.Mvc.RazorView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) +99
   System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer) +107
   System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) +291
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext, ActionResult actionResult) +13
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +56
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult) +420
   System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) +52
   System.Web.Mvc.Async.<>c__DisplayClass3_6.<BeginInvokeAction>b__4() +198
   System.Web.Mvc.Async.<>c__DisplayClass3_1.<BeginInvokeAction>b__1(IAsyncResult asyncResult) +100
   System.Web.Mvc.Async.WrappedAsyncResult`1.CallEndDelegate(IAsyncResult asyncResult) +10
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +27
   System.Web.Mvc.<>c.<BeginExecuteCore>b__152_1(IAsyncResult asyncResult, ExecuteCoreState innerState) +11
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +29
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +45
   System.Web.Mvc.<>c.<BeginExecute>b__151_2(IAsyncResult asyncResult, Controller controller) +13
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +22
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +26
   System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) +10
   System.Web.Mvc.<>c.<BeginProcessRequest>b__20_1(IAsyncResult asyncResult, ProcessRequestState innerState) +28
   System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +29
   System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
   System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +28
   System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +9
   System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +577
   System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) +132
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +163

Implementing custom ISynchronizingUserService so that users can be synchronized on another property than username

$
0
0

Hi all,

we have an application that uses mixed authentication :

  • Azure AD for the CMS side of things
  • AWS Cognito for the public facing website. It is configured so it can manage users from :
    • its own user pool
    • Google
    • Facebook

That is all working fine. For Cognito, we use emails as usernames, by specifing the NameClaimType to be ClaimTypes.Email.

A new requirement has arrived, we need to support Apple Id. Integration with Cognito is quite easy and fairly similar to the other providers.

BUT, the Apple Signin allows the user to choose between :

  • sharing his email
  • hiding his email, and use a apple generated email, something like xxxRandomxxx (at) privaterelay. appleid .com

Which means that if a user logs in with the first option and later logs in with the other option, although Cognito has only one record for that user, when it comes to login on to the website, two records are created, one for each email (the real one, and the generated one)

That makes sense as we use emails as usernames, and that when the security token from Cognito is validated, we run the following :

ServiceLocator.Current.GetInstance<ISynchronizingUserService>().SynchronizeAsync(ctx.AuthenticationTicket.Identity);

When decompiling the code, i can see that it uses the username property to find the correct user in the tblSynchedUser table, using the netSynchedUserInsertOrUpdate stored procedure.

I guess I need to implement a custom ISynchronizingUserService, so that in case of an apple user, it could check another property than username to find the correct user (for instance cognito sends an UserId in the claims that is the same regardless of which email option is chosen by the user).

I am a bit lost on how to do this, especially if i need to add some stored proc, as we are hosted on DXC-S, and have no access to the DB.

Thanks for your time reading, let me know if there is anyhting unclear.

Filter property dynamically

$
0
0

Hello, I have a question regarding Filters:

How can I pass the name of the property I want to filter in a dynamic way?

So, instead of:

query = query.Filter(x => x.Author.Match(filterValue));

I'd like to have:

query = query.Filter(x => x.GetPropertyValue("Author").Match(filterValue));

I tried to use FilterExpression to get the property value, but this didn't work for me.

Sort By Price on Product Variation using Find Query

$
0
0

Hi all!

We are using Catelog Product Model to search products and already had Sort by options with DisplayName and Relavance.

Now we would like to sort the results with Price(Asc & Dsc) wich is with variation. In our case We have developed query with  Catelog Product Model, 

So until we get the results of query we are not going to get the price of variation.

If anyone achieved this scenario please help us to break it.

Here is some code snippet:

query = query.OrderByDescending(p => p.DisplayName); //Used to sort with Display Name. P->Product  Model

We tried with 

query = query.OrderByDescending(p => p.GetProductPrice()); which is not effecting the results, because of not having price here.

var results = query
.ApplyBestBets()
.Skip((page - 1) * pageSize)
.Take(pageSize)
.Track()
.GetContentResult();

Thank you!


No results in Content Search API

$
0
0

Hello, I have a problem with usage of the Content Search API --

I have installed Content Search API by following instruction at the Episerver World. However, the API yields no results:

{"totalMatching": 0,"results": null}

The configuration of Episerver Find seems to be proper, i.e.:

  • There are Document Types listed in Overview on the Find page.
  • There are results if I'm using Episerver.Find.Client: Client.CreateFromConfig().Search<FindDocument>().GetResult(); // yields proper results.

Now, I tried to use the API in following ways. All yields no results and there's no error in the logs.

Method 1: By using Swagger UI.

Method 2: By using Visual Studio Code Rest API Client.:

### Search
GET {{baseUrl}}/{{v2}}/search/content
?languages=sv
&query=*
Accept: 'application/json'
Accept-Language: *
Authorization: Bearer {{accessToken}}

Method 3: By using the code directly:

var searchResponse = _contentApiSearchProvider.Search(new SearchRequest { Query = "*", }, new List<string> {"sv"});
var contentApiModels = searchResponse.Results?.ToList(); // is null

Using following package versions:

<package id="EPiServer.CMS" version="11.15.0" targetFramework="net48" />
<package id="EPiServer.ContentDeliveryApi.Cms" version="2.10.0" targetFramework="net48" />
<package id="EPiServer.ContentDeliveryApi.Commerce" version="2.10.0" targetFramework="net48" />
<package id="EPiServer.ContentDeliveryApi.Core" version="2.10.0" targetFramework="net48" />
<package id="EPiServer.ContentDeliveryApi.Search" version="2.10.0" targetFramework="net48" />
<package id="EPiServer.ContentDeliveryApi.Search.Commerce" version="2.10.0" targetFramework="net48" />
<package id="EPiServer.Find" version="13.2.6" targetFramework="net48" />
<package id="EPiServer.Find.Cms" version="13.2.6" targetFramework="net48" />
<package id="EPiServer.Find.Commerce" version="11.1.2" targetFramework="net48" />
<package id="EPiServer.Find.Framework" version="13.2.6" targetFramework="net48" />

I tried different variations of the query and request configuration, but none of these solutions yields proper results.

Do you know what might be the cause of that?

Error when using List of ContentArea

$
0
0

I don't see anything in the training materials or documentation for what I'm trying to do.

I would like to create a page with a list of ContentAreas that the user can specify how many areas they want and blocks inside each.  I'd also like to include restrictions on how many areas and blocks are allowed.  Here is the code example:

[SiteContentType(DisplayName = "Fun Page",
    GroupName = Global.GroupNames.Default]
public class ExamplePage : BasePage
{
    [Display(Name = "First Position Block",
       GroupName = Global.GroupNames.Default,
       Order = 60)]
    [AllowedTypes(typeof(BaseBlock))]
    [ItemRange(1, 10)]
    [ListItems(2)]
    public virtual List<ContentArea> BlockSections { get; set; }
}

I'm getting an error stating my property is not an allowed type on the class:  

The property 'BlockSections' on the content type 'ExamplePage' has a type that does not support the AllowedTypesAttribute.AllowedTypes is only supported on properties of types: 'ContentReference', 'ContentArea', 'IEnumerable`1'.

When I remove the [AllowedTypes] attribute I get a different error:

EPiServer.Core.TypeMismatchException: Type 'System.Collections.Generic.List`1[[EPiServer.Core.ContentArea, EPiServer, Version=11.14.2.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7]]' could not be mapped to a PropertyDefinitionType

Is what I'm trying to do possible or is there a better way? The only way I can get this to work is if I create multiple ContentArea properties which is not maintainable.

Thanks.

Honeypot form element

$
0
0

Since Captcha isn't compliant with WCAG and my customer doesn't like the idea of google recaptcha I've decided to do a honeypot element instead.

I've created the element and am no trying to validate it before it sends out. It's all sent by mail.

Now when the forms get's submitted I've managed to hit the run method but this is where I get stuck. I don't now how to handle it from here. 

Sorry if the code is messy, been trying all kinds of different solutions since I'm fairly new to all this, mostly there for example.

But basically what I want is if the honeypot contains any value i don't want to send the mail but it should look like everything went well for the user. 

    public class EpiFormsHoneyPotActor : SendEmailAfterSubmissionActor
    {
        private readonly Injected<IFormDataRepository> _formDataRepository;
        public override object Run(object input)
        {            
            var result = new SubmissionActorResult { CancelSubmit = false, ErrorMessage = string.Empty };
            var submittedData = _formDataRepository.Service.TransformSubmissionDataWithFriendlyName(
                SubmissionData.Data, SubmissionFriendlyNameInfos, true).ToList();            
            var honeyPot = submittedData.FirstOrDefault(x => x.Key == "HoneypotElementBlock");
            if (honeyPot.Value != null && honeyPot.Value.ToString().Length > 0)
            {
            }
            result.CancelSubmit = true;
            result.ErrorMessage = "shit hit the fan";
            return string.Empty;
        }
    }

Any help is appreciated.

Thanks

Bonus points system

$
0
0

Hello,

For our commerce project we need to implement some kind of bonus point system: a customer earns bonus points for each purchase he makes in the web shop. On a later purchase, he can trade the bonus points to get a discount. Is this something that is supported out-of-the-box by Episerver? And if not, what is the best way to re-use as many built-in features as possible?

Kind regards

Bart

Stored procedure maxes out DTU in Azure

$
0
0

We're having the same issue as Johan describes in the following post: https://world.episerver.com/forum/developer-forum/-Episerver-75-CMS/Thread-Container/2017/5/what-function-is-making-this-sql-call/DTU maxes out and the query seems to be running for about five hours (in production). The query stands for about 95% of our CPU load. We've added the index, marked as a solution in above post, but without success. I've talked with other developers that are experiencing the same issues with their customers so it doesn't seem isolated to our solution. We're running the latest EPiServer version with Find.

Also, the following post suggests deactivation of "Clear Thumbnail Properties" Schedule Job. But we don't even have it active. 
https://world.episerver.com/forum/developer-forum/-Episerver-75-CMS/Thread-Container/2019/7/extreme-poor-performance-of-clear-thumbnail-properties-schedule-job/

Any suggestions on where to take this further?

Regards,
Michael

Performance issue in Catalog UI when selecting node with more than 100.000 variants

$
0
0

Hi,

We are experiencing issues with the Catalog UI using all server memory if we access a catalog node with +100.000 variants. The reason for having this node is that the variants must belong to a node to avoid them being placed in the root of the catalog.

Is it possible to avoid that the UI tries to load all items in the view or remove the Variants node from the UI?

Tagging user with @ in page comment does not list Active Directory users when using multiplexerproviders

$
0
0
  • Issue description: In a site using the multiplexerproviders for both role and membership, tagging users with @ does not list Active Directory (AD) users when trying to add comment to a page. The function works well for users from SqlServerMembershipProvider or WindowsMembershipProvider. The tagging feature is also work well when configure ActiveDirectoryMembershipProvider and ActiveDirectoryRoleProvider for site only, AD users are suggested with @ in comments. 
  • CMS version information: 
    • EPiServer.CMS.Core version: 11.15.1
    • EPiServer.CMS.UI version: 11.25.0
  • Web.config part for multiplexerproviders
    • <membership defaultProvider="MultiplexingMembershipProvider" userIsOnlineTimeWindow="10" hashAlgorithmType="HMACSHA512">
      <providers>
      <clear />
      <add name="MultiplexingMembershipProvider" type="EPiServer.Security.MultiplexingMembershipProvider, EPiServer.Framework.AspNet"
      provider1="SqlServerMembershipProvider"
      provider2="ActiveDirectoryMembershipProvider"
      provider3="WindowsMembershipProvider" />
      <add name="SqlServerMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
      connectionStringName="EPiServerDB" enablePasswordRetrieval="false"
      enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
      maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0"
      passwordAttemptWindow="10" applicationName="/" />
      <add name="WindowsMembershipProvider" type="EPiServer.Security.WindowsMembershipProvider, EPiServer.Cms.AspNet" deletePrefix="BUILTIN\" searchByEmail="true"/>
      <add name="ActiveDirectoryMembershipProvider" maxInvalidPasswordAttempts="3" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
      connectionStringName="ActiveDirectoryProviderConnection"
      connectionUsername="########" connectionPassword="#########"
      enableSearchMethods="true" attributeMapUsername="sAMAccountName" />
      </providers>
      </membership>
      <roleManager enabled="true" defaultProvider="MultiplexingRoleProvider" cacheRolesInCookie="true">
      <providers>
      <clear />
      <add name="MultiplexingRoleProvider" type="EPiServer.Security.MultiplexingRoleProvider, EPiServer.Framework.AspNet"
      provider1="SqlServerRoleProvider"
      provider2="ActiveDirectoryRoleProvider"
      provider3="WindowsRoleProvider"
      providerMap1="SqlServerMembershipProvider"
      providerMap2="ActiveDirectoryMembershipProvider"
      providerMap3="WindowsMembershipProvider" />
      <add name="SqlServerRoleProvider" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="EPiServerDB" applicationName="/" />
      <add name="ActiveDirectoryRoleProvider" type="EPiServer.Security.ActiveDirectoryRoleProvider, EPiServer.Cms.AspNet"
      connectionStringName="ActiveDirectoryProviderConnection"
      connectionUsername="#######" connectionPassword="#######" attributeMapUsername="sAMAccountName" />
      <add name="WindowsRoleProvider" applicationName="/" type="EPiServer.Security.WindowsRoleProvider, EPiServer.Cms.AspNet"/>
      </providers>
      </roleManager>
  • Screen shots:


"developing for DXC" course exercies B4 - "Continuous integration" does not work

$
0
0

Anyone wanting to do this episerver training course to learn how to setup azure pipelines is going to be dissapointed - devops has changed so much that the instructions are now wrong, and the project will not bild in pipelines.

Its a shame they have not kept this critical piece up to date and usable, I really want to figure out how to get pipelines to work with episerver.  Excercises B1, B2 and B3 were no issue, although a lot has changed since the excercies book was written, you can still figure out what needs to be done.  Not so for B4.

I sent feedback in the oneline course, a week ago, but no response.

I also notice a difference in the folder structure when pushed to devops in git.  The examples in the exercise book have "DxcAlloy" as a top level folder in git.  But if you follow the instructions, the there is no top level folder, the root of the git repo has the projects files as it should be, e.g. "views", "static", "Models" dirs are at the top of the git folder structure.

The build error is this:

D:\a\1\s\DxcAlloy.csproj(335,3): error MSB4019: The imported project "C:\Program Files\dotnet\sdk\3.1.202\Microsoft\VisualStudio\v16.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the expression in the Import declaration "C:\Program Files\dotnet\sdk\3.1.202\Microsoft\VisualStudio\v16.0\WebApplications\Microsoft.WebApplication.targets" is correct, and that the file exists on disk.

build pipeline for alloy on devops fails: Copying file App_Data\EPiServerDB_f3fdc59f.mdf

$
0
0

I have the alloy project pushed to a devops git repo.  I can get the project to work in Azure, setup to mimic DXC as per "developing for DXC" course, and deployed using Visual studios publish tool.  Now I need to find a way to get it to build automatically using devlops piplines, which just doesnt seem to work.

I created the following azure-pipelines.yml:

trigger:
- master
pool:
  vmImage: 'windows-latest'
variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Integration'
steps:
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
  inputs:
    command: 'restore'
    restoreSolution: '$(solution)'
    feedsToUse: 'config'
- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactStagingDirectory)"'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'
- task: VSTest@2
  inputs:
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'
I added a file "NuGet.config" like so:
<?xml version="1.0" encoding="utf-8" ?><configuration><packageSources><add key="nuget.org" value="https://api.nuget.org/v3/index.json" /><add key="Episerver NuGet Feed" value="https://nuget.episerver.com/feed/packages.svc/" /></packageSources></configuration>
When I run the pipeline, I get the following error at the build stage:
PostAutoParameterizationWebConfigConnectionStrings:
Auto ConnectionString Transformed Views\Web.config into obj\integration\CSAutoParameterize\transformed\Views\Web.config.
Auto ConnectionString Transformed modules\_protected\Shell\web.config into obj\integration\CSAutoParameterize\transformed\modules\_protected\Shell\web.config.
Auto ConnectionString Transformed modules\_protected\CMS\web.config into obj\integration\CSAutoParameterize\transformed\modules\_protected\CMS\web.config.
Auto ConnectionString Transformed modules\_protected\EPiServer.Cms.TinyMce\web.config into obj\integration\CSAutoParameterize\transformed\modules\_protected\EPiServer.Cms.TinyMce\web.config.
Auto ConnectionString Transformed obj\integration\TransformWebConfig\transformed\Web.config into obj\integration\CSAutoParameterize\transformed\Web.config.
PipelineMsdeploySpecificTransformPhase:
Publish Pipeline Deploy phase Stage PipelineMsdeploySpecificTransformPhase
CopyAllFilesToSingleFolderForMsdeploy:
Creating directory "obj\integration\Package\PackageTmp".
Copying all files to temporary location below for package/publish:
obj\integration\Package\PackageTmp.
Copying bin\DxcAlloy.dll to obj\integration\Package\PackageTmp\bin\DxcAlloy.dll.
Copying App_Data\EPiServerDB_f3fdc59f.mdf to obj\integration\Package\PackageTmp\App_Data\EPiServerDB_f3fdc59f.mdf.
##[error]C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Microsoft\VisualStudio\v16.0\Web\Microsoft.Web.Publishing.targets(2601,5): Error : Copying file App_Data\EPiServerDB_f3fdc59f.mdf to obj\integration\Package\PackageTmp\App_Data\EPiServerDB_f3fdc59f.mdf failed. Could not find file 'App_Data\EPiServerDB_f3fdc59f.mdf'.
C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Microsoft\VisualStudio\v16.0\Web\Microsoft.Web.Publishing.targets(2601,5): error : Copying file App_Data\EPiServerDB_f3fdc59f.mdf to obj\integration\Package\PackageTmp\App_Data\EPiServerDB_f3fdc59f.mdf failed. Could not find file 'App_Data\EPiServerDB_f3fdc59f.mdf'. [d:\a\1\s\DxcAlloy.csproj]
Done Building Project "d:\a\1\s\DxcAlloy.csproj" (default targets) -- FAILED.
Done Building Project "d:\a\1\s\DxcAlloy.sln" (default targets) -- FAILED.
The project runs fine in visual studio.
Any ideas?
Is there any tutorial or guide to getting alloy to build and deploy in azure?  I did the "developing for DXC" course, but its so out of date, the build does not work.

See total weight for a Commerce order?

$
0
0

Hi!

We have a weight based shipping method that works just fine but we cannot see the totalt order weight for the order in Commerce Manager. Is there any way to see that?

Thanks!

/Kristoffer

Episerver local environment setup

$
0
0

Hi Team,

I am trying to connect Episerver CMS in localhost (IISExpress) using local administrator account but getting error: 

The trust relationship between the primary domain and the trusted domain failed.

I am able to load the actual web application (localhost:port/Mysite) but when I try to log in (localhost:port/Mysite/episerver) getting the above-mentioned error. 

Can someone please help me to troubleshoot this issue as this error stopping my deliverables.

Is there any way or hack, something I can skip the Episerver authentication layer so that I can access CMS directly in my local.

As I am new to Episerver, your help would be greatly appreciated.

Thank you in advance.

EPiServer/cms/Stores/notification/ status 500 error on closing notification-bell panel

$
0
0

I get the below error on closing the notifications panel. Episerver CMS 11.14.0.0.

Oddly the retrieval of the notifications works fine, and it's method also gets passed a user. How can I troubleshoot this? 

System.ArgumentNullException: Value cannot be null.
Parameter name: user
at EPiServer.Notification.Internal.DefaultNotifier.<MarkUserNotificationsAsReadAsync>d__47.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at EPiServer.Notification.Internal.DefaultNotifier.<MarkUserNotificationsAsReadAsync>d__46.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at EPiServer.Cms.Shell.UI.Rest.Notifications.NotificationService.<MarkAllAsReadAsync>d__7.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at EPiServer.Cms.Shell.UI.Rest.Notifications.NotificationStore.<MarkAllAsRead>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Mvc.Async.TaskAsyncActionDescriptor.EndExecute(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass8_0.<BeginInvokeAsynchronousActionMethod>b__1(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__11_0()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass11_1.<InvokeActionMethodFilterAsynchronouslyRecursive>b__2()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass11_1.<InvokeActionMethodFilterAsynchronouslyRecursive>b__2()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass3_6.<BeginInvokeAction>b__3()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass3_1.<BeginInvokeAction>b__5(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult)
at EPiServer.Shell.Services.Rest.RestControllerBase.EndExecute(IAsyncResult asyncResult)
at System.Web.HttpApplication.CallHandlerExecutionStep.<>c__DisplayClass7_0.<InvokeEndHandler>b__0()
at System.Web.HttpApplication.CallHandlerExecutionStep.InvokeEndHandler(IAsyncResult ar)
at System.Web.HttpApplication.CallHandlerExecutionStep.OnAsyncHandlerCompletion(IAsyncResult ar)

Viewing all 6894 articles
Browse latest View live


Latest Images