我正在使用 global.asax 之外的另一个文件进行 ServiceStack 配置,如下所示:
public class ApiAppHost : AppHostBase
{
public ApiAppHost() : base("OpenTaskApi", typeof(MyService).Assembly) { }
public override void Configure(Container container)
{
container.Register<IDbConnectionFactory>(
new OrmLiteConnectionFactory(
ConfigurationManager.ConnectionStrings["db"].ConnectionString,
false,
ServiceStack.OrmLite.SqliteDialect.Provider) {
ConnectionFilter = x=>
new ProfiledDbConnection(x,Profiler.Current)
}
);
}
}
在 global.asax 我有
protected void Application_Start(object sender, EventArgs e)
{
new ApiAppHost().Init();
}
protected void Application_BeginRequest(object sender, EventArgs e)
{
Profiler.Start();
}
protected void Application_EndRequest(object sender, EventArgs e)
{
Profiler.Stop();
}
我得到探查器仅适用于不分析 sql 的请求,如下图所示
请注意:我使用 asp.net 项目而不是 asp.net mvc 作为我的服务容器。如何修复此代码以分析 SQL?