Jayrock: веб-методы не экспортируются - PullRequest
1 голос
/ 16 ноября 2011

Я пытаюсь выяснить, что я делаю не так с простым JSON-RPC-сервисом Jayrock.

По сути, я пишу JSON-прокси для веб-службы .NET WCF, чтобы iPhoneможете использовать это.Интерфейс службы SOAP работает, поэтому я просто реализую экземпляр службы в своем обработчике Jayrock и вызываю соответствующие методы.

К сожалению, и хотя у меня не было проблем с моим тестовым проектом, когда я делал это с помощьюВ реальном приложении ни один из веб-методов Jayrock, помеченных как JsonRpcMethod, не экспортируется.Все, что я вижу, - это 3 метода по умолчанию.

Я отключил все остальные методы на случай каких-либо помех, и до сих пор ничего не вижу.Любое предложение относительно того, что я могу делать неправильно?

Вот мой общий код обработчика:

using System;
using System.Web;
using Jayrock.Json;
using Jayrock.JsonRpc;
using Jayrock.JsonRpc.Web;
using WimotiDTO.DataContract;

namespace WimotiWS
{
    /// <summary>
    ///  Summary description for JSONEndpoint
    /// This class implement a JSon proxy for the Wimoti web service
    /// </summary>
    public class JSONEndpoint : JsonRpcHandler
    {
        [JsonRpcMethod("Test")]
        string Test()
        {
            return "Yeeha!";
        }
    }
}

А вот страница:

<%@ WebHandler Language="C#" CodeBehind="JSONEndpoint.ashx.cs" Class="WimotiWS.JSONEndpoint"%>

Наконец,вызов метода списка методов возвращает:

["system.listMethods","system.version","system.about"]

1 Ответ

0 голосов
/ 13 ноября 2015

Должен использоваться атрибут класса:

[JsonRpcService("Handler")]
public class Handler : JsonRpcHandler, IRequiresSessionState
...