我使用Visual Studio 2010和使用网络的部署,推动净MVC网站到特定的环境。我安装ELMAH,它在我的开发环境很好工作,但是当我推测试,我得到了异常,因为SQLite的是不是一个好的格式。

我不使用在ELMAH或以其它方式,我知道的SQLite的。我已删除了所有可见refernces到SQLite和我已删除了所有配置bin目录下的.dll文件。但它仍然被插入与每个版本。我意识到异常的问题是,SQLite的,不能用于CPU的任何建造,我的环境不同而异,从86到64。但我宁愿SQLite的,甚至不存在。

我自卸载ELMAH和SQLite仍然插入\ bin目录。我现在已经重新安装ELMAH,我手动从每个版本后\ BIN删除SQLite.dll。我怎么能确定是什么原因造成的SQLite到每个版本后插入我的\ BIN?

有帮助吗?

解决方案

如果您不使用SQLite则需要简单地从源中删除它从其中的导入所述参考位置。为了扩展,让我们假设你下载并解压ELMAH到本地驱动器上的路径C:\ELMAH。当您添加到ELMAH一个参考,你可能指向下C:\ELMAH\bin平台版本之一,像C:\ELMAH\bin\net-2.0\Release。从C:\ELMAH\bin子目录,删除所有其他不需要的组件和文件除了Elmah.dllElmah.pdbElmah.xml。严格地说,你甚至不需要后两者,但他们仍然建议。一旦你做到了这一点,你可以到Elmah.dll添加引用在Visual Studio项目,并没有依赖也将被拉入您的应用程序的bin目录。您可能需要删除您bin目录中并重新生成项目获得从以前基准摆脱System.Data.SQLite.dll的过时副本。 ELMAH将继续做工精细没有System.Data.SQLite.dll只要你不使用Elmah.SQLiteErrorLog因为您的错误日志存储区。

每其他建议至于,你不应该从ELMAH来源删除对SQLite和拨打私人版本。

其他提示

我觉得Visual Studio将检测到的SQLite是ELMAH要求,并将其复制如果它发现它。为了才达到同样的目标,你我删除了所有的SQLite的东西从ELMAH源代码和重新建造它。这是做的相当痛苦的事情...

使用与“发现,在档案”支持文本编辑器来搜索所有项目文件“源码”。东西必须引用它。

我知道这是一个老问题,但我有一个类似的问题,在这里降落,所以也许我的回答仍然是对他人有帮助的。

只要它添加到一个首选的PropertyGroup元素的Web应用程序的项目文件:

<ExcludeFilesFromDeployment>bin\System.Data.SQLite.dll</ExcludeFilesFromDeployment>
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top