Como usar SERVICE LAYER desde C#

Buen día expertos.

me gustaria tener una referenca de como conectarme y consultar por SERVICE LAYER a la tabla ITEMS, desde C#.

Muchas Gracias.

1 me gusta

Buenas, para comunicarte al ServiceLayer desde C# yo uso un paquete nuget llamado RestSharp.

Ejemplo POST Login:

var client = new RestClient("https://127.0.0.1:50000/b1s/v1/Login");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
var body = @"{
" + "\n" +
@"    ""UserName"":""manager"",
" + "\n" +
@"    ""Password"":""manager"",
" + "\n" +
@"    ""CompanyDB"":""SBODemoCL""
" + "\n" +
@"}";
request.AddParameter("application/json", body,  ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);

Una vez logeado, sap te devuelve una cookie que debes reutilizar en todas las request

Ejemplo GET Items

var client = new RestClient("https://127.0.0.1:50000/b1s/v1/Items?$top=2");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Cookie", "B1SESSION=3af2c73c-2098-11ec-8000-080027a89118; ROUTEID=.node1");
var body = @"";
request.AddParameter("application/json", body,  ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);

Saludos

2 Me gusta

Muchas gracias Felipe, ya voy teniendo claridad al respecto. :+1: