none
Enviar un Objeto a un Servicio WCF RRS feed

  • Pregunta

  •  alguna forma de mandar un objeto a un servicio WCF????

    el programa que envia esta en WindowsForm c#

    el que recibe esta en asp.net c#

                    OleDbConnectionOleDbConne  connection = MSAConnection.getConnection();
    
            string sql = @"SELECT 
                            cod as cod,
                            Format(fecha, 'Short Date') as fecha,
                            Format(hora, 'Short Time') as hora,
                            1 as Tipo
                    FROM Control";
    
            OleDbDataAdapter d = new OleDbDataAdapter(sql, connection);
            DataTable dt = new DataTable();
            d.Fill(dt);
            dataGridView1.DataSource = dt;
    
            var Control= (from rw in dt.AsEnumerable()
                              select new DatosModelObj()
                              {
                                  cod = Convert.ToInt32(rw["cod"]),
                                  fecha = Convert.ToDateTime(rw["fecha"]),
                                  hora = Convert.ToDateTime(rw["hora"]),
                                  Tipo = Convert.ToInt32(rw["Tipo"])
                              }).ToList();
    
            WebRequest request = WebRequest.Create(@"http://localhost:77777/Services/Control.svc/Control/" + Control);
            request.Credentials = CredentialCache.DefaultCredentials;
            WebResponse response = request.GetResponse();
            Stream dataStream = response.GetResponseStream();
            StreamReader reader = new StreamReader(dataStream);
            reader.Close();
            response.Close();
    
    

    MI SERVICIO

    namespace Registro.Services
    {
        [ServiceContract]
        public interface IControl
        {
            [OperationContract]
            [WebGet(UriTemplate = "Control/{Control}",
                    RequestFormat = WebMessageFormat.Json,
                    ResponseFormat = WebMessageFormat.Json)]
            List<ControlModel> GetRegistro(ControlModel Control);
        }
    }
    

    martes, 20 de marzo de 2018 14:38

Todas las respuestas

  • hola

    porque usas WebRequest para invocar el servicio? eso no esta bien

    deberias crear un service reference para asi se cree el proxy que utilicen para invocarlo

     Consuming WCF Service in WPF Application

    de esta forma el objeto que necesitas enviar sera una clase que puedes instanciar ya que el servide reference crea codigo en base al wsdl del servicio

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 20 de marzo de 2018 15:44
  • es el ejemplo que tenia para poner mi codigo en pregunta, la idea es que este objeto tengo que enviar a mi servicio,  que lleguen mis 13.000 registros que tengo. como lo harias?  no se como implementarlo, ayudame
    martes, 20 de marzo de 2018 16:20
  • hola

    >>que lleguen mis 13.000 registros que tengo. como lo harias?

    13mil registro olvidalo, no hay servicio web que resista esa cantidad de item en una sola llamada, vas a tener que particionar varias llamadas con menos cantidad de registros

    >>la idea es que este objeto tengo que enviar a mi servicio,

    realiza la llamada creando una service reference, como explica en el articulo que recomende

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 20 de marzo de 2018 17:15