Cambie lo que un método devuelve en tiempo de ejecución en C # -- # campo con methods campo con boolean campo con return camp Relacionados El problema

Change what a method returns at runtime in C#


-4
vote

problema

Español

¿Hay alguna manera de hacer que este método devuelva verdadero bajo una determinada condición durante el tiempo de ejecución? Nota rápida: todo lo que quiero saber es si esto es posible. Confíe en mí, las formas alternativas de escribir el método no lo ayudarán.

  .js2  
Original en ingles

Is there any way to make this method return true under a certain condition during runtime? Quick note: All I want to know is if this is at all possible. Trust me, alternative ways of writing the method won't help.

public bool Example() {     return false;          }  if(//Certain condition is satisfied) {     //Example method returns true instead } 
           
     
     

Lista de respuestas

3
 
vote
vote
La mejor respuesta
 

si. Ocasionalmente tengo que hacer esto. Esto es lo que hago:

  • adjunte un perfilador CLR al proceso antes de que comience.
  • Configure el perfilador para que se le devuelva la llamada cuando Example está jurado.
  • Do IL Inyección para reemplazar sus contenidos con el código de mi elección.

Ahora controlo si el método devuelve verdadero o falso.

 

Yes. I occasionally have to do this. Here's what I do:

  • Attach a CLR profiler to the process before it starts.
  • Set the profiler to be called back when Example is jitted.
  • Do IL injection to replace its contents with the code of my choice.

Now I control whether the method returns true or false.

 
 
   
   
2
 
vote

algo como esto?

  public bool Example() {     if(//Certain condition is satisfied)     {         return true;     }      return false;          }   

Confíe en mí, las formas alternativas de escribir el método no lo ayudarán.

puedo diferir. Tal vez, si le explica su problema real, en lugar de su solución intentada, se puede dar una respuesta más precisa.

 

Something like this?

public bool Example() {     if(//Certain condition is satisfied)     {         return true;     }      return false;          } 

Trust me, alternative ways of writing the method won't help.

I beg to differ. Perhaps if you explain your actual problem, instead of your attempted solution, a more accurate answer can be given.

 
 
         
         
0
 
vote
  public bool Example() {  return Certaincondition;          }   
 
public bool Example() {  return Certaincondition;          } 
 
 
0
 
vote

Sin conocer su caso, ¿por qué no solo crea una interfaz y dos implementaciones (una implementación que devuelve verdadera y una implementación que devuelva False); y use la implementación correcta basada en su declaración if-if-?

   public interface IMyInterface  {      public bool MyMethod();  }   public class Impl1 : IMyInterface  {      public bool MyMethod()      {           return true;      }  }   public class Impl2 : IMyInterface  {      public bool MyMethod()      {           return false;      }  }   // in your logic somewhere  if(//Certain condition is satisfied)  {      new Impl1().MyMethod();  } else   {      new Impl2().MyMethod();  }   
 

Without knowing your case, why don't you just create an interface and two implementations (an implementation that returns true and an implementation that returns false); and use the correct implementation based on your if-statement?

 public interface IMyInterface  {      public bool MyMethod();  }   public class Impl1 : IMyInterface  {      public bool MyMethod()      {           return true;      }  }   public class Impl2 : IMyInterface  {      public bool MyMethod()      {           return false;      }  }   // in your logic somewhere  if(//Certain condition is satisfied)  {      new Impl1().MyMethod();  } else   {      new Impl2().MyMethod();  } 
 
 

Relacionados problema

0  Devolviendo datos de una subclase  ( Returning data from a sub class ) 
Tengo un Subclase "ShopStaff" dentro del personal ". Tengo un Meathod Getperson, que necesito para enviar el conjunto de datos en el personal y el conjunto de...

0  $ errores [] no regresando  ( Errors not returning ) 
Estoy trabajando en la construcción de un sistema de registro y registro de PHP para mi sitio web. La codificación requiere usar $ errores [] si los campos de...

21  Cachonado iEnumerable  ( Caching ienumerable ) 
public IEnumerable<ModuleData> ListModules() { foreach (XElement m in Source.Descendants("Module")) { yield return new ModuleData(m.Element("...

1  IOS SWIFT - Datos de respuesta de devolución cuando el servicio Llamada termine de recuperarse  ( Ios swift return response data when service call finish fetching ) 
Tengo un servicio web que devuelve la respuesta en JSON. Creé una clase separada para el acceso de datos en Xcode (SWIFT) para iPhone. Lo que quiero hacer es ...

474  Devuelva múltiples valores a un método que llama  ( Return multiple values to a method caller ) 
Leí el Versión C ++ de esta pregunta pero en realidad no entenderlo. ¿Puede alguien explicar claramente si se puede hacer y cómo? ...

15  ¿Cuándo usar la devolución, y lo que sucede con los datos devueltos?  ( When to use return and what happens to returned data ) 
¿Cuál es la diferencia entre: A5 y A6 ¿En qué casos debo usar A7 ? Además, cuando un valor se devuelve de una función, ¿qué le sucede? ¿Está al...

0  Java Cómo crear sí y sin botones que "devuelven" un valor en Javafx sin una nueva etapa  ( Java how to create yes and no buttons that return a value in javafx without a ) 
tl; DR disponible en la parte inferior. Estoy trabajando en un juego de monopolio, y durante el turno de cada jugador, hay algunas veces en las que necesita...

4  Hacer una función de los padres Retorno - Super Retendo?  ( Make a parent function return super return ) 
Hay un cheque que necesito para realizar después de cada paso posterior en una función, así que quería definir ese paso como una función dentro de una función...

0  Función de filtro  ( Filter function ) 
Tengo una función de filtro que se supone que debe verificar dos "campos" en una matriz, estos son Fríos Nombre y Descripción . También tengo palabras al...

0  Sintaxis no válida: la función no devuelve el valor [cerrado]  ( Invalid syntax function doesnt return value ) 
Es poco probable que esta pregunta ayude a cualquier visitante futuro; Solo es relevante para un pequeño área geográfica, u...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos