3

安装了 ELMAH NuGet 包。现在,当我将我的 ASP.NET MVC 4 项目发布到 Azure 时,它​​警告我它希望我的项目有一个直接引用System.Data.SqlServerCe.dll(因此显然由 ELMAH 引用的 DLL 包含在上传到 Azure 的位中)。

我没有使用 SQL Compact Edition 进行日志记录,所以我假设我并不真的需要那个 DLL(事实上,没有它,Azure 包也可以正常工作)。

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

有什么建议么?

编辑:

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>
4

1 回答 1

2

几个月来,我一直在 Azure 上运行一项服务,并收到同样的警告。如果您确定您没有使用 SQL Server CE,那很好。

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

于 2013-04-29T12:40:59.787 回答