无法在简单的Grapevine服务器示例

时间:2016-12-11 14:09:15

标签: c# grapevine

我正在尝试使用Grapevine来实现一个简单的C#REST服务器。我在OSX上使用Xamarin Studio。我把Grapevine 4.0.0.195作为一个包。

但是,当我尝试运行https://sukona.github.io/Grapevine/上给出的示例时,我收到此错误:

  

System.TypeLoadException:无法加载类型   来自程序集'Grapevine的'Grapevine.Interfaces.Server.HttpListener',   Version = 4.0.0.195,Culture = neutral,PublicKeyToken = null'。在   Grapevine.Server.RestServer..ctor()[0x00006] in   < 5da3c1fcf3364795b3df98bfc8b714aa>:0在TestServer.MainClass.Main   (System.String [] args)[0x0000b] in   /Users/blah/Projects/Test/TestServer/Program.cs:12

我检查了Grapevine集会,发现HttpListener确实存在。

这是我的Program.cs

using System;
using Grapevine.Server;

namespace TestServer
{
    public sealed class MainClass
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            using (var server = new RestServer())
            {
                server.Start();
                Console.ReadLine();
                server.Stop();
            }
        }
    }
}

1 个答案:

答案 0 :(得分:1)

我也遇到了同样的问题,并且发现了与Scott Offen相同的回复(感谢您的精彩工作顺便提一下!),提到了有关ExtendedProtectionSelector的内容。

所以我回到他以前的版本,我能够使用葡萄树3.1.0版本在葡萄树中使用葡萄树

它也不会开箱即用(我正在为ios构建,如果你遇到与android相同的问题,那就是idk)。它会给你一些关于日志记录的错误,所以我在他的代码中的每个地方都按Ctrl + F进行日志记录并更改了它。我几乎在EventLogger.cs中注释了所有内容

然后在RESTServer中,只要有一个EventLogger报告错误,我只需将其更改为Console.Writeline以描述调试时的错误。

祝你好运!