【发布时间】:2021-09-01 15:03:35
【问题描述】:
我有一个带有类库 (C#) 和 CLR 类库 (C++) 的 Visual Studio 解决方案。 CLR 类库构建正确,就像头文件一样简单:
public ref class CLRClass
{
public:
static void CLRMethod();
};
cpp 只实现一个空的CLRMethod。在 C# 库中,我添加了对 CLR 项目的引用,我只是调用了 CLR 方法:
CLRClass.CLRMethod();
C# 库未构建,返回错误:
错误 CS0103:名称“CLRClass”在当前上下文中不存在
但令人惊讶的是,如果我在 Visual Studio 中的 CLRClass 上按 F12,它确实将我带到了 dll 中编译文件的正确元数据,表明 CLR 库已正确编译和可访问:
public class CLRClass
{
public CLRClass();
public static void CLRMethod();
}
我不明白如何访问元数据,但是在编译 C# 库时出现 CR0103 错误,有什么建议可以解决这个问题吗?
【问题讨论】:
-
显示 .csproj 的相关部分。这可能与您导入 C++ 引用的方式有关。
-
感谢您的回答!这是一个 .Net Framework 问题,这些库针对不同的框架,可能与 .csproj 我们得出了相同的结论,谢谢!
标签: c# c++ visual-studio clr