asp.net-mvc - ELMAH 需要 System.Data.SqlServerCe.dll

标签 asp.net-mvc visual-studio elmah

已安装 ELMAH NuGet 包。现在,当我将 ASP.NET MVC 4 项目发布到 Azure 时,它​​会警告我,它希望我的项目能够直接引用 System.Data.SqlServerCe.dll(以便该 DLL显然由 ELMAH 引用,包含在上传到 Azure 的位中)。

我没有使用 SQL Compact Edition 进行日志记录,因此我认为我并不真正需要该 DLL(事实上,Azure 包在没有它的情况下也可以正常工作)。

那么,如何解决这个“缺少 DLL”问题呢?我可以尝试查找并删除 ELMAH 中引用此 DLL 的部分,但它会在下次发布新版本的 ELMAH 时返回。由于该 DLL 显然不在 GAC 中,因此我可以添加对隐藏在我的 C:\Program Files (X86)< 下的 System.Data.SqlServerCe.dll 副本的引用 文件夹,但这对我来说很难闻。或者我可以忽略该警告,但作为原则(和已发布的政策),我不会轻易容忍警告。

有什么建议吗?

编辑:

Daniel Powell 让我发布我的 NuGet packages.config,它看起来像这样(我希望 - 这比我挖掘的更深入)

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="DotNetOpenAuth.AspNet" version="4.2.2.13055" targetFramework="net45" />
  <package id="DotNetOpenAuth.Core" version="4.2.2.13055" targetFramework="net45" />
  <package id="DotNetOpenAuth.OAuth.Consumer" version="4.2.2.13055" targetFramework="net45" />
  <package id="DotNetOpenAuth.OAuth.Core" version="4.2.2.13055" targetFramework="net45" />
  <package id="DotNetOpenAuth.OpenId.Core" version="4.2.2.13055" targetFramework="net45" />
  <package id="DotNetOpenAuth.OpenId.RelyingParty" version="4.2.2.13055" targetFramework="net45" />
  <package id="elmah" version="1.2.2" targetFramework="net45" />
  <package id="elmah.corelibrary" version="1.2.2" targetFramework="net45" />
  <package id="EntityFramework" version="5.0.0" targetFramework="net45" />
  <package id="Glimpse" version="1.1.0" targetFramework="net45" />
  <package id="Glimpse.AspNet" version="1.1.0" targetFramework="net45" />
  <package id="Glimpse.Mvc3" version="1.1.0" targetFramework="net45" />
  <package id="jQuery" version="1.9.1" targetFramework="net45" />
  <package id="jQuery.UI.Combined" version="1.10.1" targetFramework="net45" />
  <package id="jQuery.Validation" version="1.11.0" targetFramework="net45" />
  <package id="knockoutjs" version="2.2.1" targetFramework="net45" />
  <package id="log4net" version="2.0.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.Mvc" version="4.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.Razor" version="2.0.20715.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.Web.Optimization" version="1.0.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebApi" version="4.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebApi.Client" version="4.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebApi.Core" version="4.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebApi.WebHost" version="4.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebPages" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebPages.Data" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebPages.OAuth" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebPages.WebData" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.Data.Edm" version="5.3.0" targetFramework="net45" />
  <package id="Microsoft.Data.OData" version="5.3.0" targetFramework="net45" />
  <package id="Microsoft.jQuery.Unobtrusive.Ajax" version="2.0.30116.0" targetFramework="net45" />
  <package id="Microsoft.jQuery.Unobtrusive.Validation" version="2.0.30116.0" targetFramework="net45" />
  <package id="Microsoft.Net.Http" version="2.0.20710.0" targetFramework="net45" />
  <package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
  <package id="Microsoft.WindowsAzure.ConfigurationManager" version="1.8.0.0" targetFramework="net45" />
  <package id="Modernizr" version="2.6.2" targetFramework="net45" />
  <package id="Newtonsoft.Json" version="4.5.11" targetFramework="net45" />
  <package id="System.Spatial" version="5.3.0" targetFramework="net45" />
  <package id="WebGrease" version="1.3.0" targetFramework="net45" />
  <package id="WindowsAzure.Storage" version="2.0.5.0" targetFramework="net45" />
</packages>

最佳答案

我在 Azure 上运行一项服务已经好几个月了,但也出现同样的警告。如果您确定没有使用 SQL Server CE,那也没有问题。

这是一个烦人的警告,但据我所知没有什么害处。

关于asp.net-mvc - ELMAH 需要 System.Data.SqlServerCe.dll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15595495/

相关文章:

sql-server - 使用 SQL SERVER 2008 R2 的 ASP.NET MVC 4 的 ELMAH

iis-6 - IIS 6 框上的 elmah

c# - session 状态跨子域共享 session ,VB.NET 网站 C# MVC 4 应用程序

c# - 为什么 ASP.NET Identity 返回 401 而不是重定向到登录页面?

c++ - 将 Visual Studio 调试器工作目录设置为 CMake 中的可执行输出目录

visual-studio - 从 Visual Basic 6 中的所有对象上移除焦点

.net - ELMAH与企业库异常处理 block

asp.net-mvc - 使用 Nuget 更新 FluentValidation 后 NinjectValidatorFactory 出现错误

c# - 如何将 Razor View 模态属性值传递给 JavaScript 函数

visual-studio - Visual Studio Post-Build 事件 - 如果文件位于子文件夹中,如何将文件复制到输出(bin)目录(仅当较新时)