我的(C#Asp.net)网站在本地工作,但当我将其发布到Azure时,它缺少一个dll(OpenXML SDK)。
经过大量的谷歌搜索后,我发现我应该将Copy Local属性设置为True。但问题是,我的解决方案资源管理器中没有引用节点。即使我创建了一个新项目,并添加了一些引用,那里也没有引用节点。 (MS Visual Studio Express 2013 for Web)
这是错误:
分析器错误消息:无法加载文件或程序集[...] 系统找不到指定的文件。
错误是由此行引起的(在我的Web.config文件中):
<add assembly="DocumentFormat.OpenXml, Version=2.5.5631.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
请帮助我:
答案 0 :(得分:0)
我的解决方案资源管理器中缺少引用节点,因为我选择创建网站而不是Web应用程序。对于网站,实际的物理文件夹结构是同步到服务器的内容。它没有References节点(并且从它的外观来看,还有很多其他的东西都缺失了,因为基本的想法有点不同 - 有关详细信息,请参阅this discussion。)
这个问题有两个解决方案:
我选择后者。再次发布网站后,Visual Studio会自动上传包含dll的Bin文件夹,它就像魅力一样。