在 visual studio 中在哪里以及如何设置 'Embed Interop Types' false

Where and How to set 'Embed Interop Types' false in visual studio

我是 asp.net 的新手,我使用 microsoft.office.interop.word dll 显示 word 文档,它显示错误

Cannot embed interop type 'Microsoft.Office.Interop.Word.WdMailSystem' found in both assembly 'c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\d5b137695f0cf9\assembly\dl3de2cc60bee7a13_f7a7d001\microsoft.office.interop.word.DLL' and 'c:\Windows\assembly\GAC\Microsoft.Office.Interop.Word.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Word.dll'. Consider setting the 'Embed Interop Types' property to false.

如果有人帮助我,我会很有帮助,谢谢

Office 互操作库无需使用嵌入互操作类型属性。

Microsoft 目前不推荐也不支持来自任何无人值守、非交互式客户端应用程序或组件(包括 ASP、ASP.NET、DCOM 和 NT)的 Microsoft Office 应用程序自动化服务),因为当 Office 在此环境中 运行 时,Office 可能表现出不稳定的行为 and/or 死锁。

如果您要在服务器端上下文中构建 运行 的解决方案,您应该尝试使用已针对无人值守执行安全处理的组件。或者,您应该尝试找到至少允许 运行 客户端部分代码的替代方案。如果您从服务器端解决方案使用 Office 应用程序,该应用程序将缺少许多 运行 成功所必需的功能。此外,您将承担整体解决方案稳定性的风险。在 MSDN 的 Considerations for server-side Automation of Office 文章中阅读更多相关信息。

您可以考虑使用 Open XML SDK,有关详细信息,请参阅 Welcome to the Open XML SDK 2.5 for Office。或者只是找到为服务器端执行而设计的任何第三方组件。