如何获取System.Web.Http.Tracing.dll?

时间:2013-11-19 12:03:06

标签: asp.net asp.net-web-api diagnostics

我读到Web API有自己的TraceWriter实现2012.2,例如here,以及其他来源。

我现在正在使用带有.NET 4.5.1的VS2013,并且无法找到EnableSystemDiagnosticsTracing。它的意思是在HttpConfigurationTracingExtensions类中定义,该类位于System.Web.Http.Tracing.dll中。但是,无法找到此程序集 - 不在“添加引用”对话框中的程序集列表中,而不是在GAC中。

这个集会应该来自哪里? Docs说这是我安装的.NET Framework 4的一部分。还安装了ASP.NET Web API 2跟踪5.0.0 NuGet包。有更新吗?我应该重新安装.NET Framework吗?

我知道自己实施ITraceWriter并不是什么大不了的事,但是我不知道内置实现会发生什么。

2 个答案:

答案 0 :(得分:13)

只需安装所需的NuGet包

Install-Package Microsoft.AspNet.WebApi.Tracing -Version 5.0.0

这有点奇怪,但它是正确的包

http://www.nuget.org/packages/microsoft.aspnet.webapi.tracing

答案 1 :(得分:6)

如果您安装了Tracing 5.0.0 NuGet包,它应该正确地包含在您的项目中。安装它的那一刻,我相信在VS中应该打开一个单独的文本文件,显示你应该包含在WebApiConfig.cs文件中的代码。

我没有从头开始创建Web API 2项目(仅从5.0之前的项目升级到5.0项目),但这是应该驻留在WebApiConfig.cs文件中的代码:

// To disable tracing in your application, please comment out or remove the following line of code
// For more information, refer to: http://www.asp.net/web-api
config.EnableSystemDiagnosticsTracing();

应该是这样,如果软件包安装正确,现在应该在项目中使用跟踪。