Использование методов веб-службы (с параметрами) с использованием Json на Android - PullRequest
0 голосов
/ 18 сентября 2018

У меня на компьютере настроена веб-служба, и я использовал SOAP для связи между ними, и она работала нормально.Теперь я хочу изменить тип обмена данными на JSON с XML, но я не знаю, как вызвать метод с использованием Http и JSON.

Настройка веб-службы выглядит примерно так

  [WebService(Namespace = "https://webapplication4-mv3.conveyor.cloud/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
 //[System.Web.Script.Services.ScriptService]

public class WebService1 : System.Web.Services.WebService
{
    [WebMethod]
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
    public void Login(string username, string password)
    {
        JavaScriptSerializer js = new JavaScriptSerializer();
        if(username == "Selman" && password == "123456")
        {
            Context.Response.Write("Access Granted"); 
        }
        else
        {
            Context.Response.Write("Access Denied");
        }
    }

        [WebMethod]  
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)]  
    public void GetStudents()   
    {
        Students[] students = new Students[2]  
        {  
            new Students()   
            {  
                    StudentId = 1,  
                        Name = "NitinTyagi",  
                        Marks = 400  
                },
                new Students()   
                {  
                    StudentId = 2,  
                        Name = "AshishTripathi",  
                        Marks = 500  
                },
        };
        JavaScriptSerializer js = new JavaScriptSerializer();  
        Context.Response.Write(js.Serialize(students));  
    }  

    [WebMethod]
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
    public string GetAllMethodNamesAndInputTypes()
    {
        return "Hello World";
    }


    [WebMethod]
    public int Multiplication(int a, int b)
    {
        return (a * b);
    }

    [WebMethod]
    public string GetClientData(int Number)
    {
        ClientData[] Clients = null;


            Clients = new ClientData[Number];
            for (int i = 0; i < Number; i++)
            {
                Clients[i].Name = "Client " + i.ToString();
                Clients[i].ID = i;
            }

            string tempString = "";
            tempString += "Start Of Document\n\n";

        for( int i = 0;i<Number;i++)
        {
            tempString += "Client Name is : " + Clients[i].Name + "\n";            
            tempString += "Client ID is : " +Clients[i].ID + "\n";

        }
        tempString+= "\n\n End Of Document";
        return tempString;

    }
}

public class Students
{
    public int StudentId
    {
        get;
        set;
    }
    public string Name
    {
        get;
        set;
    }
    public int Marks
    {
        get;
        set;
    }
}  

public struct ClientData
{
    public String Name;
    public int ID;
}

}

У меня вопрос: куда поместить имена методов и параметры, если даже возможно использовать HTTP вместоSOAP?

(я пытаюсь получить доступ к веб-службе с телефона Android с помощью kotlin)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...