none
Devolver nombre de la variable RRS feed

  • Pregunta

  • Buenos días comunidad

    Se podría devolver el nombre de la variable pero de donde fue llamado, pongo un ejemplo por que no se muy bien como explicarlo

    string miNombre = "Juan";

    Nombre(miNombre);

    public void Nombre(string texto)
    {

        var nombreVariable = miNombre <- aquí debería de devolver el nombre de la variable que se creo fuera de esta función 

        var valor=texto;

        ...

    }

    Saludos

    sábado, 18 de abril de 2020 10:13

Todas las respuestas

  • No, no se puede. El nombre de la variable no se pasa al procedimiento; desde dentro de éste no se puede conocer. Es más, de hecho no tiene por qué ser una variable, se podría invocar al procedimiento poniendo una constante o una expresión. Al procedimiento le llega en el Stack el resultado de evaluar dicha variable/constante/expresión; el procedimiento no tiene ninguna visibilidad sobre cómo se calculó dicho valor antes de que le llegase.

    Desde fuera del procedimiento, y si tienes una versión suficientemente moderna de C#, se puede usar el operador "nameof":

    string nombreVariable = nameof(miNombre);

    sábado, 18 de abril de 2020 12:42
    Moderador
  • hola

    >>aquí debería de devolver el nombre de la variable que se creo fuera de esta función

    Para que quieres el nombre de la variable si la idea es poder acceder a su contenido el cual pasa por parametro

    No tiene ninguna utilidad lo que planteas

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    sábado, 18 de abril de 2020 14:22
  • Hola Juan FA

     

    ¿Alguna actualización sobre la consulta realizada? ¿Alguna de las respuestas proporcionadas te ayudó?

     

    Espero tu respuesta.

     

    Gracias por usar los foros de MSDN.

     

     

    Luis Diego Mora

     

    --------------------------------------------------------------------------

     

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. 

     

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.  

     

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    martes, 21 de abril de 2020 15:21
    Moderador
  • Hola

    Al final me replantee el problema, lo tenia mal enfocado. He creado otro hilo en el foro

    Saber si se a asignado valor

    Donde tampoco he conseguido exactamente como yo quería, pero puede vale.

    Saludos

    jueves, 23 de abril de 2020 11:25
  • hola

    >>Donde tampoco he conseguido exactamente como yo quería, pero puede vale.

    Entity Framework resuelve el problema que planteas

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 23 de abril de 2020 13:30