c# - 如何确定是否需要 Copy Local

标签 c# .net asp.net-mvc visual-studio

我试图在我的 MVC C# 项目的 Razor View 中引用 System.Device。它提示说即使我将它添加到项目中,引用也丢失了。我的 GAC 中没有程序集,为了测试,我在我的 global.asax.cs 文件中添加了以下虚拟行(并在启用多个调试标志的情况下进行编译,我不认为它会被优化掉)。

new System.Device.Location.GeoCoordinate();

以及我的 Controller 操作中的这一行:

System.Diagnostics.Debug.WriteLine(System.Device.Location.GeoCoordinate.Unknown.IsUnknown);

这样还是不行。查找 this solution我检查了我的 GAC,但它不存在(这是有道理的,但很好检查)。找到this solution后我将引用标记为 Copy Local,然后问题就消失了。

为什么我需要将我的引用标记为 Copy Local,即使我明确调用了库?

最佳答案

如果 DLL 不在“可发现”位置,例如 GAC 或路径环境变量中的路径,那么您需要使用复制本地自动将其移动(在构建时)到您的输出目录,这是可发现的(或者更准确地说,是在探测路径上)。

关于c# - 如何确定是否需要 Copy Local,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41772752/

相关文章:

c# - 从 SQL View 中选择要在文本框中显示的特定值

.net - 如何根据开发人员的操作系统架构在 Visual Studio 中复制文件?

asp.net - 开源开发过程中如何混淆数据库认证信息?

c# - ASP.NET MVC + WF + WCF + SERVICE LAYER 我如何在一个项目中使用这些?

c# - .NET 的替代方案提供了关于 uris 和 url 的 api

asp.net-mvc - ASP.NET MVC 每个 View 的静态内容路由策略

c# - 如何为您的 WPF 应用程序提供平面 (Windows 8) 类型的 UI 外观?

c# - 检查 List<T> 日期的最快方法

c# - 如何完全获取c#中方法的路径?

.net - 需要库来比较语音轨道(发音)