Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Meta en 27 Diciembre 2016, 21:31 pm



Título: Intentar leer texto desde una clase externa
Publicado por: Meta en 27 Diciembre 2016, 21:31 pm
Hola:

Quiero leer un texto que puse como string desde la Class2 y no me sale.
(https://social.msdn.microsoft.com/Forums/getfile/981573)
Dejo el código.

Program.cs

Código
  1. using System;
  2.  
  3. namespace Textos_Clases_02
  4. {
  5.    class Program
  6.    {
  7.        static void Main(string[] args)
  8.        {
  9.            Console.Title = "Métodos y funciones C#";
  10.  
  11.            Console.WriteLine("Que muestre los textos desde la clase externa llamada Class1.cs");
  12.  
  13.            Class1 txt = new Class1();  // Crear un objeto.
  14.            txt.MostrarTextoClass1();   // Mostrar textos de la Class1.
  15.  
  16.            Class2 txt2 = new Class2(); // Crear un objeto.
  17.            Console.WriteLine(txt2.metodo()); // Mostrar textos de la Class2.
  18.  
  19.            Console.ReadKey(); // Pulsa cualquier tecla para salir.
  20.        }
  21.    }
  22. }


Class1.cs

Código
  1. using System;
  2.  
  3. namespace Textos_Clases_02
  4. {
  5.    class Class1
  6.    {
  7.        public void MostrarTextoClass1()
  8.        {
  9.            Console.WriteLine("Hola desde Class1 con el método MostrarTextoClass1");
  10.        }
  11.    }
  12. }

Class2.cs

Código
  1. namespace Textos_Clases_02
  2. {
  3.    class Class2
  4.    {
  5.        public string metodo(string variable)
  6.        {
  7.            variable = "Texto variable de la clase Class2 y método o función metodo.";
  8.            return variable;
  9.        }
  10.    }
  11. }

¿Cuál es la mejor forma de hacerlo?

En resumen: Quiero añadir textos en clases externas, así cualquier método lleno de textos no los tengo en el programa principal y me ahorro leer muchos códigos que se que funcionan.En el programa principal solo los llamo.

Saludos.


Título: Re: Intentar leer texto desde una clase externa
Publicado por: Eleкtro en 28 Diciembre 2016, 11:13 am
¿Esos métodos solo los has declarado con la intención de imprimir texto?. Entonces, sencillamente declara variables o constantes de tipo string...

Código
  1. using System;
  2.  
  3. namespace ConsoleApplication1 {
  4.  
  5.    public sealed class Program {
  6.  
  7.        static void Main(string[] args) {
  8.  
  9.            Console.WriteLine(Fields.Message01);
  10.            Console.WriteLine(Fields.Message02);
  11.            Console.Read();
  12.  
  13.        }
  14.    }
  15. }
  16.  

Código
  1. namespace ConsoleApplication1 {
  2.  
  3.    public sealed class Fields {
  4.  
  5.        public static readonly string Message01 = "Hello World";
  6.        public static readonly string Message02 = "Welcome to this program.";
  7.  
  8.        private Fields() { }
  9.  
  10.    }
  11. }

Lo mismo es aplicable en caso de que tengas declarado un método que no solo imprima texto sinog que además cumpla otro propósito, entonces separa ese texto a imprimir de la lógica del algoritmo del método.

Saludos!


Título: Re: Intentar leer texto desde una clase externa
Publicado por: Meta en 29 Diciembre 2016, 21:55 pm
Muchas gracias, me ha servido mi muy distinguido amigo. ;)