Select DISTINCT From Datatable Using C# Parte II

Existe siempre la necesidad de realizar un Select Distinct a un DataTable cuando las filas están repetidas. En esta ocasión les comparto una nueva solución en .Net C# que permite devolver los resultados con mas de una columna. 


using System.Data;

public DataTable SelectRowDisctinct(DataTable dtData, string sColumnName)
{
 try
 {                
  DataTable distintos = dtData.DefaultView.ToTable(true, sColumnName);
  DataTable dtNew = new DataTable();
  foreach (DataColumn dcName in dtData.Columns)
  {
   dtNew.Columns.Add(new DataColumn(dcName.Caption,dcName.DataType));
  }
   
  foreach (DataRow drRow in distintos.Rows)
  {
   dtNew.ImportRow(dtData.Select(sColumnName + " = '" + drRow[0] + "'")[0]);
  }
  return dtNew;
 }
 catch (Exception ex)
 {
  throw (ex);
 }
}

Espero les pueda servir, de un Select DISTINCT From Datatable Usando C#
Share:

Formulario MDI Child C# en Visual Studio 2012

Los Formularios MDI son aquellos que nos permiten contener otros formularios dentro de ellos. A continuación vamos a trabajar un ejemplo en C# Visual Studio 2012, que cual tendrá un formulario principal - MDIParent , a éste se le debe establecer la propiedad IsMdiContainer en "true".


Luego nos creamos nuestro formulario Mdi, que para este ejercicio se llama Form1 - MdiChildren.




Para llamar nuestro formulario MdiChildren una sola vez, desde el formulario principal, podemos crear el siguiente método y llamarlo en el evento Click del menú, así:
private void CallFormMdi()
    {
        bool encontrado = false;
            foreach (Form form in this.MdiChildren)
            {
                if (form.Name.Equals("Form1"))
                {
                    encontrado = true;
                    form.Activate();
                }
            }

            if (!encontrado)
            {
                Form1 _frmGenerarArchivo = new Form1();
                _frmGenerarArchivo.MdiParent = this;
                _frmGenerarArchivo.Show();
            }
    }
 
private void OpenForm(object sender, EventArgs e)
{
 CallFormMdi();
}
"" Si tienes dudas o quieras ampliar este artículo, lo puedes hacer dejando tus comentarios. Además, si lo consideras interesante puedes compartirlo con amigos y seguidores a través de los botones sociales que aparecen en esta página.""

Share:

Parte II: Solo Letras C# - Windows Forms (Consola)

Por solicitud de algunas personas, donde necesitan realizar la validación de solo letras en C# no en un control Textbox sino que exista un método o función que reciba el parámetro del texto y retorne como resultado si los caracteres son o no letras. A continuación dejo para ustedes, código ejemplo completo realizado en Visual Studio.Net C# con un proyecto de tipo consola.


using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;

namespace ConsoleSoloLetras
{
    class Program
    {
        static void Main(string[] args)
        {
            string sCaracteres = string.Empty;

            //Solicitar el dato
            Console.WriteLine("Escriba un texto a validar");
            sCaracteres = Console.ReadLine();

            //Llamar metodo que evalua los caracteres
            if (IsLetters(sCaracteres))
            {
                Console.WriteLine("Los caracteres son letras.");
            }
            else
            {
                Console.WriteLine("Solo se aceptan letras");
            }
            Console.ReadLine();
        }

        //Metodo que permite identificar si los caracteres son letras o no
        static bool IsLetters(string sCaracteres)
        {
            foreach (char ch in sCaracteres)
            {
                if (!Char.IsLetter(ch) && ch != 32)
                {
                    return false;
                }
            }
            return true;
        }
    }
}
Si tienen dudas o le fue de ayuda este ejemplo, por favor nos leemos en los comentarios, hasta pronto.
Share:

Función IsNumeric .Net C#

La funcion IsNumeric en C# nos permite evaluar si una expresión es numérica o no, esto lo podemos lograr a través del siguiente ejemplo:

public bool IsNumeric(object Expression)
{
      bool isNum;
      double retNum;

      isNum = Double.TryParse(Convert.ToString(Expression), 
System.Globalization.NumberStyles.Any,
System.Globalization.NumberFormatInfo.InvariantInfo, out  retNum);
return isNum;
}
Share:

c#: Duplicate items are not supported by the "Resources" parameter

Hoy les presento un error que le sucedió a un amigo (Pedro) a la hora de obtener una copia del diseño y código de un formulario de un proyecto en Visual Studio .Net. Para esto, lo que realizo fue copiar el formulario original y realizarle una copia. Cuando intento abrir la copia del formulario le genero el siguiente error:

"Error 1 The item "obj\Debug\My_Project.NewConsumable.resources" was specified more than once in the "Resources" parameter. Duplicate items are not supported by the "Resources" parameter. My Project"

Solución:

1. Cerrar el Visual Studio.
2. Ir a la carpeta del proyecto de Visual Studio.
3. Localizar el cs. y Designer.cs que acabo de realizarle copia.
4. Abrir ambos archivos.
5. Buscar y reemplazar las instancias del nombre del formulario original con el nombre del nuevo formulario. Tener presente mantener las convenciones de nombres.
6. Guardar ambos archivos, cerrar el editor.
7. Ir a Visual Studio y abrir el proyecto recién corregido y listo.
Cualquier sugerencia o duda nos leemos en los comentarios.

Hasta pronto.
Share:

Visual Studio .Net: resx Invalido

Para restaurar en Visual Studio .Net un archivo resx invalido debemos seguir los siguientes pasos:

1. Eliminar del explorador de proyecto el archivo resx invalido asociado al formulario que presenta problemas.
2. Haga doble clic para abrir el diseñador del formulario.
3. En el formulario, realizar cualquier cambio por ejemplo: mover un botón, caja de texto o control de posición. 
4. Listo!!! Visual Studio generar automáticamente un nuevo archivo resx.

Espero que los pasos anteriores los pueda ayudar. Si tienen dudas o sugerencias del post, los puedes realizar en los comentarios hasta pronto.
Share:

Crear Setup o Instalador en Visual Studio .NET 2010

Este post nos permite mostrar paso a paso como se configura un Setup o instalador en Visual Studio .Net 2010.
Para este ejemplo realice un pequeño proyecto con un formulario que nos da la bienvenida así:


Luego de crear la aplicación, agregamos un nuevo proyecto Setup, para esto damos clic derecho sobre la solución y seleccionamos la opción Agregar - Nuevo proyecto, luego nos aparece una ventana como lo muestra la siguiente imagen:














En esta ventana nos ubicamos en el árbol de la izquierda, ingresamos a Otro tipo de proyecto (Other Project Types)  - Instalación e Implementación (Setup and Deployment) y luego seleccionamos Visual studio Installer. En la ventana de la derecha seleccionamos Setup Project, digitamos el nombre del proyecto para este caso SetupEjemplo y clic en el botón OK. Finalmente nos aparece el proyecto agregado a la solución como se ve en la siguiente imagen:


Para asociar nuestra aplicación al Setup, damos clic derecho sobre Application Folder - Add - Project Outout.. o proyecto de salida, como lo muestra la siguiente imagen:


Seguidamente nos aparece esta ventana donde debemos seleccionar Primary output (contiene la Dll o Exe del proyecto) y damos clic sobre el botón OK.

Seleccionar Ejecutable

La siguiente ventana nos indica que hemos asociado correctamente el Setup con nuestra aplicación. Esto lo podemos ver en el Explorador de soluciones en nuestro proyecto de instalación.


Al dar clic sobre el proyecto Setup nos aparecen las propiedades del mismo, aquí podemos configurar el Autor, descripción, nombre del producto, versión, entre otras propiedades.










Si nuestra aplicación, previamente necesita de algún producto Framework, Crystal Reports o Sql Server, se encuentre instalado, lo podemos hacer de la siguiente manera. Damos clic derecho sobre el Setup - Propiedades así:


Nos muestra una ventana de propiedades del Setup. En ésta, existe un botón llamado prerrequisitos o Prerequisites... damos clic en él. Luego nos aparece una ventana que nos permite marcar aquellos componentes que nuestra aplicación necesita para una correcta ejecución.


Luego de lo anterior, tenemos prácticamente configurado nuestro Setup, solo resta configurar un acceso directo de nuestro instalador, ya se en en el escritorio o en Inicio - Todos los programas, lo podemos hacer de la siguiente forma:

* Estando en el instalador, en la parte izquierda aparece una carpeta llamada User's Desktop, aquí damos clic derecho, luego en el submenú seleccionadmos Add - Project Output.. y finalmente en la ventana que aparece seleccionamos Primary output y clic en Aceptar.

En la explicación anterior nuestro acceso directo queda en el escritorio de nuestro PC. Si queremos ponerlo en Inicio - Todos los programas seleccionamos la carpeta User's Programs Menú y seguimos los pasos anteriores.

Finalmente para generar nuestro Setup, solo basta con ubicarnos en el proyecto y compilamos:

Compilar Setup
"" Si tienes dudas o quieras ampliar este artículo, lo puedes hacer dejando tus comentarios. Además, si lo consideras interesante puedes compartirlo con amigos y seguidores a través de los botones sociales que aparecen en esta página.""


Share:

Exportar DataSet a Excel desde C# .Net

Hace un par de días, un compañero me llamo a preguntarme si conocía como pasar o exportar los datos de una grilla (DatagridView) en .Net C# a un archivo Excel. Fue aquí, donde recordé que había hecho algo parecido hace algún tiempo. Este código por su necesidad en la mayoría de las aplicaciones (Exportar datos) puede llegar a ser muy útil y quiero que lo tengan con ustedes.

Empecemos explicando un poco la funcionalidad del ejemplo.

Los datos que voy a mostrar en la grilla vienen de un procedimiento almacenado, estos registros los almaceno en una variable publica de tipo DataSet, la cual se encarga de poblar o llenar la Grilla y finalmente exporta los datos ha Excel. Les muestro el código para ser un poco mas claro.



Declaramos de Variable Dataset
DataSet dsDatos = new DataSet();

Se llena la variable con la consulta que viene de base de datos y se muestran los datos en la Grilla.
SqlCommand cmd = new SqlCommand(sSql, connDB);
SqlDataAdapter DaRecDatos = new SqlDataAdapter(cmd);
DaRecDatos.Fill(dsDatos);
dataGridView1.DataSource = dsDatos;

Para exportar los datos llamo al Dataset (dsDatos) que previamente llenamos y se lo pasamos aun método llamado, para este ejemplo ExportarAexcel que se encargara de exportar los datos en la ruta que seleccionamos en el FileDialog, así:
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Filter = "Excel Files (*.xls)|*.xls";// All Files (*.*)|*.*";
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
	FileName = saveFileDialog.FileName;
	if (FileName.Trim() != "")
	{
		if (ExportarAexcel(dsDatos, FileName, ref sError))
		{
			return true;
		}                    
	}
}

Anexo método que exporta los datos:
public static bool ExportarAexcel(DataSet source, string fileName,ref string sErr)
{
	try
	{
		System.IO.StreamWriter excelDoc;

		excelDoc = new System.IO.StreamWriter(fileName);
		const string startExcelXML = "\r\n\r\n \r\n " +
		  "\r\n " +
		  "\r\n " +
		  "\r\n \r\n " +
		  "\r\n \r\n " +
		  "\r\n ";
		const string endExcelXML = "";

		int rowCount = 0;
		int sheetCount = 1;
	   
		excelDoc.Write(startExcelXML);
		excelDoc.Write("");
		excelDoc.Write("");
		excelDoc.Write("");
		for (int x = 0; x < source.Tables[0].Columns.Count; x++)
		{
			excelDoc.Write("");
			excelDoc.Write(source.Tables[0].Columns[x].ColumnName);
			excelDoc.Write("");
		}
		excelDoc.Write("");
		foreach (DataRow x in source.Tables[0].Rows)
		{
			rowCount++;
			//if the number of rows is > 64000 create a new page to continue output
			if (rowCount == 64000)
			{
				rowCount = 0;
				sheetCount++;
				excelDoc.Write("
"); excelDoc.Write("
"); excelDoc.Write(""); excelDoc.Write(""); } excelDoc.Write(""); //ID=" + rowCount + " for (int y = 0; y < source.Tables[0].Columns.Count; y++) { System.Type rowType; rowType = x[y].GetType(); switch (rowType.ToString()) { case "System.String": string XMLstring = x[y].ToString(); XMLstring = XMLstring.Trim(); XMLstring = XMLstring.Replace("&", "&"); XMLstring = XMLstring.Replace(">", ">"); XMLstring = XMLstring.Replace("<", "<"); excelDoc.Write("" + ""); excelDoc.Write(XMLstring); excelDoc.Write(""); break; case "System.DateTime": //Excel has a specific Date Format of YYYY-MM-DD followed by //the letter 'T' then hh:mm:sss.lll Example 2005-01-31T24:01:21.000 //The Following Code puts the date stored in XMLDate //to the format above DateTime XMLDate = (DateTime)x[y]; string XMLDatetoString = ""; //Excel Converted Date XMLDatetoString = XMLDate.Year.ToString() + "-" + (XMLDate.Month < 10 ? "0" + XMLDate.Month.ToString() : XMLDate.Month.ToString()) + "-" + (XMLDate.Day < 10 ? "0" + XMLDate.Day.ToString() : XMLDate.Day.ToString()) + "T" + (XMLDate.Hour < 10 ? "0" + XMLDate.Hour.ToString() : XMLDate.Hour.ToString()) + ":" + (XMLDate.Minute < 10 ? "0" + XMLDate.Minute.ToString() : XMLDate.Minute.ToString()) + ":" + (XMLDate.Second < 10 ? "0" + XMLDate.Second.ToString() : XMLDate.Second.ToString()) + ".000"; excelDoc.Write("" + ""); excelDoc.Write(XMLDatetoString); excelDoc.Write(""); break; case "System.Boolean": excelDoc.Write("" + ""); excelDoc.Write(x[y].ToString()); excelDoc.Write(""); break; case "System.Int16": case "System.Int32": case "System.Int64": case "System.Byte": excelDoc.Write("" + ""); excelDoc.Write(x[y].ToString()); excelDoc.Write(""); break; case "System.Decimal": case "System.Double": excelDoc.Write("" + ""); excelDoc.Write(x[y].ToString()); excelDoc.Write(""); break; case "System.DBNull": excelDoc.Write("" + ""); excelDoc.Write(""); excelDoc.Write(""); break; default: throw (new Exception(rowType.ToString() + " not handled.")); } } excelDoc.Write(""); } excelDoc.Write("
"); excelDoc.Write("
"); excelDoc.Write(endExcelXML); excelDoc.Close(); } catch (Exception ex) { sErr = ex.Message; return false; } return true; }

Si desean conocer como Exportar un DaTable a formato CSV no dejen de visitarlo es una funcionalidad que los puede sacar de apuros en cualquier proyecto.

"" Si tienes dudas o quieras ampliar este artículo, lo puedes hacer dejando tus comentarios. Además, si lo consideras interesante puedes compartirlo con amigos y seguidores a través de los botones sociales que aparecen en esta página.""


Share:

Solo Letras en los Textbox C# - Windows Forms

En el desarrollo de aplicaciones en C#, es común encontrarse con la necesidad de restringir la entrada de datos en TextBox a solo letras. Este artículo abordará estrategias efectivas para llevar a cabo esta validación, proporcionando código práctico y consejos esenciales para mejorar la calidad de tu aplicación.

Solo Letras en C#


1. Validación en Tiempo Real: Evento Keypress

La primera técnica consiste en implementar una validación en tiempo real al suscribirse al evento KeyPress. De esta manera, puedes filtrar las entradas y permitir solo letras. Aquí te presento un fragmento de código que puedes integrar:
private void txtCaracter_KeyPress(object sender, KeyPressEventArgs e)
{
if (!(char.IsLetter(e.KeyChar)) && (e.KeyChar != (char)Keys.Back))
{
      MessageBox.Show("Solo se permiten letras", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
      e.Handled = true;
      return;
}
}
Este código asegura que solo se ingresen letras y permite el uso de teclas de control como borrar o retroceso.

2. Utilización de Expresiones Regulares: Verificación de Texto Completo

Otra estrategia poderosa implica el uso de expresiones regulares para verificar el contenido completo del TextBox. El siguiente ejemplo muestra cómo implementar esta validación:

private void TextBox_TextChanged(object sender, EventArgs e)
{
    string input = TextBox.Text;
    if (!Regex.IsMatch(input, "^[a-zA-Z]+$"))
    {
        MessageBox.Show("Por favor, ingrese solo letras.", "Error de Validación", MessageBoxButtons.OK, MessageBoxIcon.Error);
        TextBox.Text = ""; // Limpiar el contenido no válido
    }
}

Mejora la Experiencia del Usuario con Validación de Entrada de Datos

Implementar la validación para ingresar solo letras en TextBox en C# no solo mejora la integridad de los datos sino que también proporciona una experiencia más intuitiva y libre de errores para los usuarios. Al integrar estas estrategias en tu código, garantizas una aplicación robusta y confiable. ¡Explora estas opciones y eleva la calidad de tu desarrollo en C#!

Leer Más:



Ejecutando el código anterior se genera un mensaje como lo muestra la siguiente imagen:


Digitación correcta:


Está validación no solo se puede aplicar sobre un control Textbox, lo podemos ver en proyectos de tipo consola, como se puede ver en el siguiente ejemplo. Parte II: Solo Letras C# - Windows Forms (Consola)


Share:

▶ Como Validar solo Números en los Textbox C# - Windows Forms

Cuando trabajas en aplicaciones C# y te encuentras con la necesidad de asegurar que un TextBox solo acepte números, la validación adecuada se convierte en un aspecto clave para garantizar la integridad de los datos. En este artículo, exploraremos estrategias efectivas para lograr esta validación específica y proporcionaremos códigos prácticos que puedes implementar en tus proyectos de desarrollo en C#.

TEXTBOX SOLO NÚMEROS

1. Implementación de Validación en Tiempo Real:

La primera estrategia para validar solo números en un TextBox es aprovechar eventos en tiempo real. Puedes suscribirte al evento KeyPress y verificar si la tecla presionada es un número. Aquí tienes un ejemplo de cómo implementarlo:

Como hacer que un Textbox Solo acepte Números en C#

El siguiente código ejemplo valida que se digite solo números en un Textbox en C#, para esto se agrega al evento KeyPress de la caja de texto:
private void txtCaracter_KeyPress(object sender, KeyPressEventArgs e)
{
if (!(char.IsNumber(e.KeyChar)) && (e.KeyChar != (char)Keys.Back))
{
      MessageBox.Show("Solo se permiten numeros", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
      e.Handled = true;
      return;
}
} 

Este código asegura que solo se ingresen números y controla que las teclas de control (como borrar o retroceso) puedan usarse.

2. Uso de Expresiones Regulares:

Otra técnica poderosa es emplear expresiones regulares para validar el contenido del TextBox. La clase Regex de C# facilita la implementación de esta validación. A continuación, se presenta un ejemplo de cómo hacerlo:

private void TextBox_TextChanged(object sender, EventArgs e)
{
    string input = TextBox.Text;
    if (!Regex.IsMatch(input, "^[0-9]+$"))
    {
        MessageBox.Show("Por favor, ingrese solo números.", "Error de Validación", MessageBoxButtons.OK, MessageBoxIcon.Error);
        TextBox.Text = ""; 
    }
}

Este código verifica si el contenido del TextBox contiene únicamente en números. En caso contrario, muestra un mensaje de error y lo limpia el. 

3. Utilización de Métodos TryParse: 

Una tercera opción es utilizar los métodos int.TryParse o double.TryParse para intentar convertir el texto a un número. Si la conversión tiene éxito, se permite el ingreso; de lo contrario, se rechaza. 

private void TextBox_Leave(object sender, EventArgs e)
{
    if (!int.TryParse(TextBox.Text, out _))
    {
        MessageBox.Show("Por favor, ingrese solo números.", "Error de Validación", MessageBoxButtons.OK, MessageBoxIcon.Error);
        TextBox.Text = ""; // Limpiar el contenido no válido
    }
}

Leer Más:

Valida Solo Números en C#

Al digitar una tecla diferente a un número, se envía un mensaje (se podría comentar la linea del mensaje para que no se muestre) como lo muestra la siguiente imagen:


Digitación correcta:


Garantizar la entrada de datos precisa es esencial en cualquier aplicación, y validar solo números en TextBox en C# es un paso crucial. Al implementar estas estrategias, no solo mejora la integridad de los datos sino que también proporciona a los usuarios una experiencia más intuitiva y libre de errores.

Asegúrate de integrar estas prácticas en tu código para lograr una aplicación robusta y confiable. ¡Explora estas opciones y lleva tu desarrollo en C# al siguiente nivel!

Si quieren conocer esta validación, pero controlando que solo digiten letras, pueden visitar el articulo Solo letras en los Textbox C# - Windows Forms.

Share:

Select DISTINCT From Datatable Using C#

Para un desarrollo tenia un inconveniente con un Datatable, el cual consistía en que los datos que tenia en ese momento se repetían, esto me ocasionaba inconsistencia en la presentación de la información.

Para esto necesitaba realizar un Select Distinct From muy parecido al que se realiza en Sql, pero usando C# o algo que me permitiera eliminar los datos repetidos en el Datatable, como solución realice la siguiente linea:

1. Declaro Datatable:
C#
DataTable dtDistinct = new DataTable();
VB
Dim dtDistinct As DataTable();

2. Realizo Distinct del Datatable dtAll que contiene los registros repetidos, por los campos que considero se repiten:
C#
string[] sColumnas = {"Campo1","Campo2"};
dtDistinct = dtAll.DefaultView.ToTable(true, sColumnas);
VB
String() sColumnas = "Campo1","Campo2"
dtDistinct = dtAll.DefaultView.ToTable(true, sColumnas)

Se obtiene el resultado de los registros sin duplicar, en el Datatable dtDistinct.

Ese fue un claro ejemplo de un Select DISTINCT From Datatable usando C#.
Share:

Habilitar Controles en Toolbox - Visual Studio .Net

En alguna ocasion, por alguna razón el Toolbox de Visual Studio se desabilito como lo muestra la imagen:
Toolbox Visual Studio .Net


Por un momento pense que debia Instalar el Visual Studio, pero lo pude solucionar restaurando la configuracion predeterminada de la siguiente forma:

1. Ir a Inicio -> programas ->Visual Studio 2010->visual studio tools -> Visual Studio 2010 Command Prompt

2. En el prompt ejecutar: devenv /ResetSettings

Luego de ejecutar la anterior linea, se muestra el Toolbox:

ToolBox


Si el problema se mantiene, se puede utilizar el Asistente para la instalación de Visual Studio - a través del Panel de Control para reparar Visual Studio, esto permite restaurar el Visual Studio en su estado original.

"" Si tienes dudas o quieras ampliar este artículo, lo puedes hacer dejando tus comentarios. Además, si lo consideras interesante puedes compartirlo con amigos y seguidores a través de los botones sociales que aparecen en esta página.""
Share:

Como Generar Números Aleatorios en C#

Random: números aleatorios c#
Una forma sencilla de Generar Números aleatorios en .Net C# es a través del namespace System.Random. Esta clase se puede trabajar a través de tres métodos, los cuales los vamos a ver a continuación, pero primero vamos a instanciar la clase Random:



//Creamos un objeto random, simplemente
Random r = new Random();
// ó podriamos agregar un agregado de aleatoriedad de la siguiente forma:
Random r = new Random(DateTime.Now.Millisecond);

Luego de crear el objeto, conozcamos los métodos que nos permiten generar números aleatorios:

Método Next()

Devuelve un numero aleatorio entero de 32 bits no negativo
Ejemplo:

int nAleatorio1 = r.Next();

Método Next(Int32)

Devuelve un numero aleatorio entero de 32 bits que es menor al valor máximo.
// Establecemos un máximo
   int nAleatorio2 = r.Next(100);

Método Next(Int32, Int32)

Devuelve un numero aleatorio entero de 32 bits que esta dentro de un intervalo establecido.
// Establecemos un rango, por ejemplo queremos un número de 3 cifras
int nAleatorio3 = r.Next(100, 999);
// Si deseamos un número entre el 5 y el 15,
int nAleatorio4 = r.Next(5, 15);

Método NextDouble()

Devuelve un número de punto flotante que es igual o mayor de 0,0 y 1,0

// Devuelve un double entre 0 y 1
int nAleatorio5 = r.NextDouble();

Método NextBytes(Byte[])

Rellena con números aleatorios los ejemplos de una Matriz.

byte[] buffer = new byte[100];
r.NextBytes(buffer)

Veamos un ejemplo sencillo, donde generamos un Número Aleatorio en C# de 8 cifras, este ejemplo retorna una cadena con el número aleatorio.

public System.String GenerateRandom()
    {
        System.Random randomGenerate = new System.Random();
        System.String sPassword = "";
        sPassword = System.Convert.ToString(randomGenerate.Next(00000001,99999999));
        return sPassword.Substring(sPassword.Length - 8, 8);
    }

Share: