forked from microsoft/BotBuilder-Samples
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGlobal.asax.cs
42 lines (37 loc) · 1.28 KB
/
Global.asax.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
namespace TestBot
{
using System.Web.Http;
using System.Web.Routing;
using Autofac;
using Helpers;
using Microsoft.Bot.Builder.Dialogs;
using Microsoft.Bot.Builder.Dialogs.Internals;
using Microsoft.Bot.Builder.History;
public class WebApiApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
this.RegisterBotDependencies();
RouteConfig.RegisterRoutes(RouteTable.Routes);
GlobalConfiguration.Configure(WebApiConfig.Register);
}
private void RegisterBotDependencies()
{
Conversation.UpdateContainer(builder =>
{
builder
.Register(c => new ActivityLogger(c.Resolve<IBotData>()))
.As<IActivityLogger>()
.InstancePerLifetimeScope();
foreach (var commandType in CommandsHelper.GetRegistrableTypes())
{
builder
.RegisterType(commandType)
.Keyed(commandType.Name, commandType)
.AsImplementedInterfaces()
.InstancePerMatchingLifetimeScope(DialogModule.LifetimeScopeTag);
}
});
}
}
}