c# - 如何在Windows下的Mono上构建protobuf-csharp-port

标签 c# windows mono protocol-buffers

我已阅读构建说明 protobuf-csharp-portLinux/Unix系统下使用Mono。我仍然无法让它工作,最终我会打开一个线程来询问原因,但这不是这篇文章的问题。

我使用 Windows 进行开发,并使用 VS2010 成功构建了 protobuf-csharp-port。事实上,我需要使用从 Unity3D 内部生成的 C# 类,这需要使用 Mono。

我的计算机上安装了 Mono 2.8

问题是:

可以使用 MonoDevelop 在 Windows 中构建 protobuf-csharp-port 吗?我尝试简单地导入 VS2010 解决方案并使用 Mono 编译它,但它不起作用。

我该怎么做?

编辑

在尝试使用 MonoDevelop 简单编译 VS 解决方案时,我遇到了几个错误。第一个位于 FieldMappingAttribute.cs 的以下行中:

 public MappedType MappedType { get; private set; }

错误如下:

FieldMappingAttribute.cs(40,40): Error CS0501: 'Google.ProtocolBuffers.Descriptors.FieldMappingAttribute.MappedType.get' must declare a body because it is not marked abstract or extern (CS0501) (ProtocolBuffers)

最佳答案

您不需要自己构建主 protobuf-csharp-port 项目...或者如果您这样做,您应该很少能够这样做。

不需要仅仅为了构建生成的C#类而重建protobuf-csharp-port。只需添加对 Google.ProtocolBuffers.dll 的引用,就可以了。

也就是说,我已经有一段时间没有在 Mono 上测试它了。它不会做任何极其棘手的事情,但您绝对应该彻底测试。

关于c# - 如何在Windows下的Mono上构建protobuf-csharp-port,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13649545/

相关文章:

Windows 命令提示符将错误记录到文件中

php - 如何使用 WAMP 登录 phpMyAdmin,用户名和密码是什么?

c# - 是否可以创建包含 WPF 库的 Mono 包?

asp.net - dotnet 和 dnx 命令行工具有什么区别?

android - 'mono shared runtime' 始终部署到 android 设备

c# - 在 datagridview 中将某些行设置为粗体时性能下降

c# - 如何在 c#.net windows 应用程序中检查 gridview 的行是否被选中

.net - 如何完全卸载 Red Gate 的 .NET Reflector?

c# - 如何在不影响其他项目的情况下重构C#中的命名空间?

c# - 忽略另一个项目中的错误以在解决方案中运行当前项目