How to optimize Orchard on Azure Web Site: it is so slow

Topics: Administration, Customizing Orchard, Installing Orchard, Troubleshooting
Nov 16, 2012 at 3:04 PM
Edited Nov 16, 2012 at 3:07 PM

Hello,

I started a test server on Azure Web site. Orchard v 1.6 from Azure Gallery.

The idea was to experiment all the modules I was interested in (due to lack of serious documentation).

I started loading modules from gallery: nearly 20-30 modules.

And the response time became very very slow: more than 1 minute to display a page.

I think that my error has been to use the basic sql option with SQL compact.

I tried to enable cache, syscache but it is always very slow.

I am using a 2 core with one instance engine in reserved mode.

I can't accept that loading 20 or 30 new modules could slow down Orchard in such a way.

What could be the solution to my problem, must I change the DB (there is nothing in this DB: no pages, no user, only working on the Dashboard) ? How to do it in Azure Web Site ?.

 

Thanks for any idea.

CS

Developer
Nov 16, 2012 at 4:57 PM

Here are some steps to follow in order to improve performance : http://blog.cloudconstruct.com/post/A-tale-of-performance-in-Orchard-CMS.aspx

I also remember it has been said that Dynamic compilation has to be disabled on Azure because it uses File system watchers and it doesn't work well on Azure but I don't know where there is a documentation about this problem.

To do so, in /Config, rename Sample.HostComponents.config in HostComponents.config and add this kind of section :


<Component Type="Orchard.Environment.Extensions.Loaders.DynamicExtensionLoader">     
<Properties>       
<Property Name="Disabled" Value="true"/>     
</Properties>   
</Component>

If someone has more information about this, please share it.

Nov 16, 2012 at 5:07 PM
Edited Nov 16, 2012 at 5:08 PM

Thanks.

In fact I discovered that there is a configuration problem, certainly a conflict between some modules I have installed from gallery just after initial setup.
Some class or method name  is duplicated and generates this log trace

 

2012-11-16 16:56:31,585 [9] Orchard.Exceptions.DefaultExceptionPolicy - An unexpected exception was caught
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidOperationException: Sequence contains more than one matching element
   at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at Orchard.Environment.State.ShellStateCoordinator.<>c__DisplayClass21.<Orchard.Environment.State.IShellStateManagerEventHandler.ApplyChanges>b__13(<>f__AnonymousTyped`2 entry) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\State\ShellStateCoordinator.cs:line 127
   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at Orchard.Environment.State.ShellStateCoordinator.Orchard.Environment.State.IShellStateManagerEventHandler.ApplyChanges() in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\State\ShellStateCoordinator.cs:line 126

I tryed inspecting the enabled modules.
Here I discovered that I have 2 Vandelay Tarnslation manager, one from the global package and one I certainly added afterward.
I disabled the last one but it was not the cause of the error.

There is certainly a missing security in Orchard, when this condition is reached, the 2 involved mudule should be desactivated.
Orchard should not continue working with this permanent error.

Any help still welcome. 
CS
Coordinator
Nov 16, 2012 at 5:50 PM

You need to find what module is slowing it down. We have lots of sites running on Azure with additional modules, including on small instances, and they run super-fast. The problem is almost certainly one or several of those modules.

Nov 16, 2012 at 7:28 PM
Edited Nov 16, 2012 at 7:50 PM

Contact Form - 0.9.4 ByCyberStride, LLC

was causing the previous exception, as I was using oForm also and created a 'Contact form' with it , was it the reason of the 'Sequence contains more than one matching element' exception ?

It is a little faster now.

Next problem is that oForm is crashing when I try to call the Contact Page I created with it (using the default values provided automatically....even after paying the 25$ for the license....

Next step, disable oForm, but what will happen to created content with this module....total discovery.....

And try to create a custom Form....

Nov 16, 2012 at 8:26 PM
Edited Nov 16, 2012 at 8:41 PM

I am stupid, it seems that I added several time lot of things without seeing any warning...

Next trying to create a new Content Type, adding fields, I discovered that in the list to select the field type I have 2 DateTime Fields and 2 Media picker Fields ????

I will try to remove this or ....delete the VM and create a fresh one (3 hours yesterday).

Nov 17, 2012 at 12:33 PM

On my second try on the Azure web sites with Orchard, I discovered that the oForm module is causing a lot of problems, beware do not use it in 1.6.

Its install crashes, and the part that seems to be installed is not working, generating exceptions and log file, like this

2012-11-17 11:12:29,252 [30] Orchard.Recipes.Services.RecipeStepExecutor - Recipe execution 182bfb0f1b2d410d833ec0c10fc72319 was cancelled because a step failed to execute
System.InvalidOperationException: Sequence contains no matching element
   at System.Linq.Enumerable.Single[TSource](IEnumerable`1 source, Func`2 predicate)
   at Orchard.Environment.Features.FeatureManager.<>c__DisplayClass2d.<EnableFeature>b__20(String fId) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\Features\FeatureManager.cs:line 148
   at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
   at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
   at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)
   at Orchard.Environment.Features.FeatureManager.<EnableFeature>b__1e(String currentFeatureId, IDictionary`2 featuresState) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\Features

\FeatureManager.cs:line 147
   at Orchard.Environment.Features.FeatureManager.GetAffectedFeatures(String featureId, IDictionary`2 features, Func`3 getAffectedDependencies) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment

\Features\FeatureManager.cs:line 195
   at Orchard.Environment.Features.FeatureManager.EnableFeature(String featureId, IDictionary`2 availableFeatures, Boolean force) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\Features

\FeatureManager.cs:line 153
   at Orchard.Environment.Features.FeatureManager.<>c__DisplayClass9.<EnableFeatures>b__4(String featureId) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\Features\FeatureManager.cs:line 73
   at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at Orchard.Environment.Features.FeatureManager.EnableFeatures(IEnumerable`1 featureIds, Boolean force) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\Features\FeatureManager.cs:line 72
   at Orchard.Recipes.RecipeHandlers.FeatureRecipeHandler.ExecuteRecipeStep(RecipeContext recipeContext)
   at Orchard.Recipes.Services.RecipeStepExecutor.ExecuteNextStep(String executionId)

2012-11-17 11:12:30,080 [30] Orchard.Exceptions.DefaultExceptionPolicy - An unexpected exception was caught
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> Orchard.OrchardCoreException: Recipe execution with id 182bfb0f1b2d410d833ec0c10fc72319 was cancelled 

because the "Feature" step failed to execute. The following exception was thrown: Sequence contains no matching element. Refer to the recipe journal for more information.
   at Orchard.Recipes.Services.RecipeStepExecutor.ExecuteNextStep(String executionId)
   at Orchard.Recipes.Services.RecipeScheduler.ExecuteWork(String executionId)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at Orchard.Events.DefaultOrchardEventBus.TryInvokeMethod(IEventHandler eventHandler, Type interfaceType, String methodName, IDictionary`2 arguments, IEnumerable& returnValue) in c:\Users\sebros\My Projects

\Orchard\src\Orchard\Events\DefaultOrchardEventBus.cs:line 80
   at Orchard.Events.DefaultOrchardEventBus.TryInvoke(IEventHandler eventHandler, String interfaceName, String methodName, IDictionary`2 arguments, IEnumerable& returnValue) in c:\Users\sebros\My Projects

\Orchard\src\Orchard\Events\DefaultOrchardEventBus.cs:line 68
   at Orchard.Events.DefaultOrchardEventBus.TryNotifyHandler(IEventHandler eventHandler, String messageName, String interfaceName, String methodName, IDictionary`2 eventData, IEnumerable& returnValue) in c:

\Users\sebros\My Projects\Orchard\src\Orchard\Events\DefaultOrchardEventBus.cs:line 52

2012-11-17 11:38:39,954 [10] Orchard.Recipes.Services.RecipeStepExecutor - Recipe execution 82917b7d36a54e8dba9a7f7b780af922 was cancelled because a step failed to execute
System.InvalidOperationException: Sequence contains no matching element
   at System.Linq.Enumerable.Single[TSource](IEnumerable`1 source, Func`2 predicate)
   at Orchard.Environment.Features.FeatureManager.<>c__DisplayClass2d.<EnableFeature>b__20(String fId) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\Features\FeatureManager.cs:line 148
   at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
   at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
   at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)
   at Orchard.Environment.Features.FeatureManager.<EnableFeature>b__1e(String currentFeatureId, IDictionary`2 featuresState) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\Features

\FeatureManager.cs:line 147
   at Orchard.Environment.Features.FeatureManager.GetAffectedFeatures(String featureId, IDictionary`2 features, Func`3 getAffectedDependencies) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment

\Features\FeatureManager.cs:line 195
   at Orchard.Environment.Features.FeatureManager.EnableFeature(String featureId, IDictionary`2 availableFeatures, Boolean force) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\Features

\FeatureManager.cs:line 153
   at Orchard.Environment.Features.FeatureManager.<>c__DisplayClass9.<EnableFeatures>b__4(String featureId) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\Features\FeatureManager.cs:line 73
   at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at Orchard.Environment.Features.FeatureManager.EnableFeatures(IEnumerable`1 featureIds, Boolean force) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\Features\FeatureManager.cs:line 72
   at Orchard.Recipes.RecipeHandlers.FeatureRecipeHandler.ExecuteRecipeStep(RecipeContext recipeContext)
   at Orchard.Recipes.Services.RecipeStepExecutor.ExecuteNextStep(String executionId)

2012-11-17 11:38:40,126 [10] Orchard.Exceptions.DefaultExceptionPolicy - An unexpected exception was caught
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> Orchard.OrchardCoreException: Recipe execution with id 82917b7d36a54e8dba9a7f7b780af922 was cancelled 

because the "Feature" step failed to execute. The following exception was thrown: Sequence contains no matching element. Refer to the recipe journal for more information.
   at Orchard.Recipes.Services.RecipeStepExecutor.ExecuteNextStep(String executionId)
   at Orchard.Recipes.Services.RecipeScheduler.ExecuteWork(String executionId)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at Orchard.Events.DefaultOrchardEventBus.TryInvokeMethod(IEventHandler eventHandler, Type interfaceType, String methodName, IDictionary`2 arguments, IEnumerable& returnValue) in c:\Users\sebros\My Projects

\Orchard\src\Orchard\Events\DefaultOrchardEventBus.cs:line 80
   at Orchard.Events.DefaultOrchardEventBus.TryInvoke(IEventHandler eventHandler, String interfaceName, String methodName, IDictionary`2 arguments, IEnumerable& returnValue) in c:\Users\sebros\My Projects

\Orchard\src\Orchard\Events\DefaultOrchardEventBus.cs:line 68
   at Orchard.Events.DefaultOrchardEventBus.TryNotifyHandler(IEventHandler eventHandler, String messageName, String interfaceName, String methodName, IDictionary`2 eventData, IEnumerable& returnValue) in c:

\Users\sebros\My Projects\Orchard\src\Orchard\Events\DefaultOrchardEventBus.cs:line 52

2012-11-17 12:11:45,870 [68] Orchard.Environment.DefaultOrchardHost - A tenant could not be started: Default
Autofac.Core.DependencyResolutionException: An exception was thrown while invoking the constructor 'Void .ctor(Orchard.Environment.Configuration.ShellSettings, Orchard.Data.ISessionFactoryHolder)' on type 

'SqlCeCommandInterpreter'. ---> System.IO.IOException: The process cannot access the file 'C:\DWASFiles\Sites\adnweb10\VirtualDirectory0\site\wwwroot\App_Data\Sites\Default\mappings.bin' because it is being 

used by another process.
   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String 

msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize)
   at Orchard.FileSystems.AppData.AppDataFolder.CreateFile(String path) in c:\Users\sebros\My Projects\Orchard\src\Orchard\FileSystems\AppData\AppDataFolder.cs:line 123
   at Orchard.Data.SessionConfigurationCache.StoreConfiguration(ConfigurationCache cache) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Data\SessionConfigurationCache.cs:line 73
   at Orchard.Data.SessionConfigurationCache.GetConfiguration(Func`1 builder) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Data\SessionConfigurationCache.cs:line 56
   at Orchard.Data.SessionFactoryHolder.BuildConfiguration() in c:\Users\sebros\My Projects\Orchard\src\Orchard\Data\SessionFactoryHolder.cs:line 96
   at Orchard.Data.SessionFactoryHolder.GetConfiguration() in c:\Users\sebros\My Projects\Orchard\src\Orchard\Data\SessionFactoryHolder.cs:line 74
   at Orchard.Data.Migration.Interpreters.SqlCeCommandInterpreter..ctor(ShellSettings shellSettings, ISessionFactoryHolder sessionFactoryHolder) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Data

\Migration\Interpreters\SqlCeCommandInterpreter.cs:line 19
   at lambda_method(Closure , Object[] )
   at Autofac.Core.Activators.Reflection.ConstructorParameterBinding.Instantiate()
   --- End of inner exception stack trace ---
   at Autofac.Core.Activators.Reflection.ConstructorParameterBinding.Instantiate()
   at Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.<Execute>b__0()
   at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func`1 creator)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Features.Collections.CollectionRegistrationSource.<>c__DisplayClass4.<>c__DisplayClass6.<RegistrationsFor>b__1(IComponentRegistration cr)
   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   at Autofac.Features.Collections.CollectionRegistrationSource.<>c__DisplayClass4.<RegistrationsFor>b__0(IComponentContext c, IEnumerable`1 p)
   at Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Registration.ExternalRegistrySource.<>c__DisplayClass8.<RegistrationsFor>b__3(IComponentContext c, IEnumerable`1 p)
   at Autofac.Builder.RegistrationBuilder.<>c__DisplayClass1`1.<ForDelegate>b__0(IComponentContext c, IEnumerable`1 p)
   at Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Activators.Reflection.AutowiringParameter.<>c__DisplayClass2.<CanSupplyValue>b__0()
   at Autofac.Core.Activators.Reflection.ConstructorParameterBinding.Instantiate()
   at Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.<Execute>b__0()
   at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func`1 creator)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Activators.Reflection.AutowiringParameter.<>c__DisplayClass2.<CanSupplyValue>b__0()
   at Autofac.Core.Activators.Reflection.ConstructorParameterBinding.Instantiate()
   at Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.<Execute>b__0()
   at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func`1 creator)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Activators.Reflection.AutowiringParameter.<>c__DisplayClass2.<CanSupplyValue>b__0()
   at Autofac.Core.Activators.Reflection.ConstructorParameterBinding.Instantiate()
   at Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.<Execute>b__0()
   at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func`1 creator)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Features.Collections.CollectionRegistrationSource.<>c__DisplayClass4.<>c__DisplayClass6.<RegistrationsFor>b__1(IComponentRegistration cr)
   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   at Autofac.Features.Collections.CollectionRegistrationSource.<>c__DisplayClass4.<RegistrationsFor>b__0(IComponentContext c, IEnumerable`1 p)
   at Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Registration.ExternalRegistrySource.<>c__DisplayClass8.<RegistrationsFor>b__3(IComponentContext c, IEnumerable`1 p)
   at Autofac.Builder.RegistrationBuilder.<>c__DisplayClass1`1.<ForDelegate>b__0(IComponentContext c, IEnumerable`1 p)
   at Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable`1 parameters)
   at Autofac.Core.Resolving.InstanceLookup.Execute()
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Resolving.ResolveOperation.Execute(IComponentRegistration registration, IEnumerable`1 parameters)
   at Autofac.Core.Lifetime.LifetimeScope.ResolveComponent(IComponentRegistration registration, IEnumerable`1 parameters)
   at lambda_method(Closure )
   at Orchard.Events.DefaultOrchardEventBus.<NotifyHandlers>d__0.MoveNext() in c:\Users\sebros\My Projects\Orchard\src\Orchard\Events\DefaultOrchardEventBus.cs:line 37
   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   at Orchard.Events.DefaultOrchardEventBus.Notify(String messageName, IDictionary`2 eventData) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Events\DefaultOrchardEventBus.cs:line 26
   at Orchard.Events.EventsInterceptor.Intercept(IInvocation invocation) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Events\EventsInterceptor.cs:line 26
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at IOrchardShellEventsProxyfe724f1f1c2941a09d7712cff9f3dbff.Activated()
   at Orchard.Environment.DefaultOrchardShell.Activate() in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\DefaultOrchardShell.cs:line 51
   at Orchard.Environment.DefaultOrchardHost.ActivateShell(ShellContext context) in c:\Users\sebros\My Projects\Orchard\src\Orchard\Environment\DefaultOrchardHost.cs:line 155
   at Orchard.Environment.DefaultOrchardHost.CreateAndActivateShells() in c:\Users\sebros\My Projects\Orchard\sr

Nov 17, 2012 at 2:13 PM
Edited Nov 17, 2012 at 2:14 PM

@csadnt: I looked at oForms pre 1.4. It was a really nice concept but for my purposes it didn't work out. Consider using the Custom.Forms module. If you are not doing any back-end coding, it works really well. This is a tutorial on using it with E-mail and RECAPTCHA.

If you are doing back-end coding, as in rolling your own modules, I would look at Skywalker's excellent series of posts.

Nov 17, 2012 at 2:25 PM

I will try Custom Forms