Foro Oficial de C#

Pues he estado leyendo eso por partes, solo queria saber si habia alguien que tuviera un camino mas directo :blush:

Por ahora dejemos asi toes, estare trabajando con lo que me han ayudado.

Gracias a los 3.
 
Pues he estado leyendo eso por partes, solo queria saber si habia alguien que tuviera un camino mas directo :blush:

Por ahora dejemos asi toes, estare trabajando con lo que me han ayudado.

Gracias a los 3.

mira la solución más sencilla es WPF...

pero pues deberás aprenderlo primero pues hacer ese control de buenas a primeras puede resultar difícil, pero ya conociéndolo... seria pan comido.
 
Pero trabajando como lo hizo el man en ese tuto si sale toes? El man hasta donde he leido no ha mencionado WPF asi que supongo que lo saco a fuerza bruta xD
 
Como hago para encriptar la cadena de conexcion de un servicio WCF que esta almacenada en el APPConfig del servicio?

Lo he intentado asi y nada no me funciona, esta problema me tiene pariendo micos, ya que o lo puedo dejar sin encriptar.


<?xml version=”1.0encoding=”utf-8?>
<configuration>
<connectionStrings>
<add name=“strCon” connectionString=“DataSource=(local);Initial Catalog=AdventureWorks;Integrated Security=True” />
</connectionStrings>
</configuration>





Este ejemplo es el de un archivo App.config, y es obviamente un archivo de ejemplo, muy sencillo. Luego, en mi aplicación debo importar el siguiente namespace (hay que agragarlo a las referencias del proyecto también):



using System.Configuration;

Y ahora, para encriptar la cadena de conexión escribo el siguiente código:

Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
ConnectionStringsSection sect = config.ConnectionStrings;
sect.SectionInformation.ProtectSection(”DataProtectionConfigurationProvider“);
config.Save();



Y para desencriptarlo uso este código:

Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
ConnectionStringsSection sect = config.ConnectionStrings;
if (sect.SectionInformation.IsProtected){
sect.SectionInformation.UnprotectSection();
config.Save();
}


alquien me puede ayudar.
 
Yo lo haria utilizando
RSACryptoServiceProvider

mira este ejemplo:

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

string cadenaCript;
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();

private void button1_Click(object sender, EventArgs e)
{

byte[] textBytes = Encoding.Default.GetBytes(textBox1.Text);
byte[] cryptedBytes = rsa.Encrypt(textBytes, true);

textBox2.Text = cadenaCript =Encoding.Default.GetString(cryptedBytes);

}

private void button2_Click(object sender, EventArgs e)
{
byte[] textBytes = Encoding.Default.GetBytes(cadenaCript);
byte[] decryptedBytes = rsa.Decrypt(textBytes, true);

textBox1.Text = Encoding.Default.GetString(decryptedBytes);
}
}

Para que sirva siempre en tu app, basta con que crees una aplicacion con tres cosas
:

1- un generador de claves, que segun el ejemplo seria algo como
rsa.ExportCspBlob
rsa.ExportParameters

esos dos los [puedes mandar a un archivo... cosa que luego puedes cargar con los mismos metodos pero Import...

2- entonces ya resolviendo lo de guardar las claves y sus configuraciones... pues creas la version encriptada de los parametros del string de conexion, y pues despues cuando los lees los desenciptas...
 
Bueno, sucede lo siguiente... En WindowsForms tengo un datagridview que despliega la lista de archivos de una carpeta... asi q el datagrid no esta enlazado a ninguna base de datos... necesito agregarle una columna de chequeo para realizar determinada acción con las filas seleccionadas...

He estado intentando con esta clase:

DataGridViewCheckBoxColumn checkret = new DataGridViewCheckBoxColumn();

pero he tenido muchos problemas y no he conseguido mucho... me pueden ayudar???
 
Hola:

Me pueden decir cual es la linea correcta para cerrar una aplicacion en WPF?
Hasta el momento me doy cuenta que Application.Exit() no esta y this.Close no finaliza el proceso.

Gracias
 
Aca esta:

Código:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace Tienda_Ropa
{
    /// <summary>
    /// Interaction logic for Window1.xaml
    /// </summary>
    public partial class Window1 : Window
    {

        //Controlador de la base del programa
        private Control controladorLogica;

        //Referencia de cada una de las ventanas del sistema
        private LVCatWin lvCatWin;
        private ClientesWin clientWin;
        private Ventas ventasWin;

        public Window1()
        {
            InitializeComponent();

            this.controladorLogica = new Control();

            this.lvCatWin = new LVCatWin(this);
            this.clientWin = new ClientesWin(this);
            this.ventasWin = new Ventas(this);
        }

        internal Control ControladorLogica
        {
            get { return controladorLogica; }
            set { controladorLogica = value; }
        }

        [B]private void btnSalir_Click(object sender, RoutedEventArgs e)
        {
            this.Close();
        }[/B]

        private void btnCompradores_Click(object sender, RoutedEventArgs e)
        {
            this.Hide();
            clientWin.Show();
        }

        private void btnVentas_Click(object sender, RoutedEventArgs e)
        {
            this.Hide();
            this.ventasWin.Show();
        }

        private void btnLVCat_Click(object sender, RoutedEventArgs e)
        {
            this.Hide();
            this.lvCatWin.Show();
        }
    }
}
 
Aca esta:

Código:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace Tienda_Ropa
{
    /// <summary>
    /// Interaction logic for Window1.xaml
    /// </summary>
    public partial class Window1 : Window
    {

        //Controlador de la base del programa
        private Control controladorLogica;

        //Referencia de cada una de las ventanas del sistema
        private LVCatWin lvCatWin;
        private ClientesWin clientWin;
        private Ventas ventasWin;

        public Window1()
        {
            InitializeComponent();

            this.controladorLogica = new Control();

            this.lvCatWin = new LVCatWin(this);
            this.clientWin = new ClientesWin(this);
            this.ventasWin = new Ventas(this);
        }

        internal Control ControladorLogica
        {
            get { return controladorLogica; }
            set { controladorLogica = value; }
        }

        [B]private void btnSalir_Click(object sender, RoutedEventArgs e)
        {
            this.Close();
        }[/B]

        private void btnCompradores_Click(object sender, RoutedEventArgs e)
        {
            this.Hide();
            clientWin.Show();
        }

        private void btnVentas_Click(object sender, RoutedEventArgs e)
        {
            this.Hide();
            this.ventasWin.Show();
        }

        private void btnLVCat_Click(object sender, RoutedEventArgs e)
        {
            this.Hide();
            this.lvCatWin.Show();
        }
    }
}


Supongo que tu tienes varias ventanas... supongo que cierras una ventana y las demas quedan abiertas....

prueba con esto:

Application.Current.Shutdown();
 
Bueno, sucede lo siguiente... En WindowsForms tengo un datagridview que despliega la lista de archivos de una carpeta... asi q el datagrid no esta enlazado a ninguna base de datos... necesito agregarle una columna de chequeo para realizar determinada acción con las filas seleccionadas...

He estado intentando con esta clase:

DataGridViewCheckBoxColumn checkret = new DataGridViewCheckBoxColumn();

pero he tenido muchos problemas y no he conseguido mucho... me pueden ayudar???
 
Les comparto este articulo de mi blog:


C# – Cuando la precisión que da el StopWatch no es suficiente…



Medir tiempo en nanosegundos

Hola!
He observado que es muy frecuente cuando alguien quiere hacer una prueba de rendimiento (sobre todo a nivel académico) que la resolución que da el objeto StopWatch (System.Diagnostics.Stopwatch) de Milisegundos resulta no ser siempre suficiente.
En esos casos lo mejor es recurrir a las funciones de la API para crear algo más de acuerdo a nuestras necesidades, de tal forma que podamos medir el tiempo transcurrido con una precisión mayor a la que da – por alguna razón – el objeto StopWatch, así que creare algo sencillo que permitirá lograr la precisión deseada, pero primero – como siempre –algo de teoría al respecto.

CÓMO CALCULAR EL TIEMPO
Para calcular el tiempo dentro de un computador debemos valernos de la información que nos brinda el procesador, como todos sabemos el procesador posee un atributo llamado frecuencia, el cual nos indica cuantos ciclos de reloj realiza el procesador cada segundo. De esta forma encontramos que hay procesadores 1 Ghz (un millon de ciclos de reloj por segundo) y hay de muchos diferentes valores.
Por otro lado un procesador posee un contador de ciclos es decir un registro el cual informa de cuantos ciclos ha procesado.


articulo completo: http://juank.black-byte.com/c-medir-nanosegundos/
 
Man como estas, por aqui de nuevo a consultarte algo
Lo que pasa es que estoy desarrollando un software para control de un hotel (lo que implica el Check in y Check out, inventarios etc) tengo unos modulos ya casi listos, esta basado en ASP.NET, pero queria hacerte unas preguntas que son las siquientes:

  1. ¿Donde debo colocar las operaciones de la base de datos (Inserciones, busquedas etc), del lado de la aplicacion de ASP.NET o en un servicio web WCF que tengo?. Uso un servicio WCF porque posiblemente tendra que poder realizar reservas por internet.
  2. ¿Como puedo hacer para que mi servicio web no sea consumido por aplicaciones ajenas a mi aplicacion ? Colocar seguridad en caso de alquien quiera consumir del servicio.
Bacan muchas gracias por tu ayuda, te agradezco infinitamente .
smiley%20-%20grin.gif
 
xjuanch0x dijo:
1.¿Donde debo colocar las operaciones de la base de datos (Inserciones, busquedas etc), del lado de la aplicacion de ASP.NET o en un servicio web WCF que tengo?. Uso un servicio WCF porque posiblemente tendra que poder realizar reservas por internet.
De ningún lado,
debe ser un componente aparte e independiente, de tal forma que cuando lo quieras usar desde la pagina lo puedas hacer y cuando lo quieras hacer desde el web service también.
Recuerda, minimo tres capas:

1- De datos
2- De negocio - de logica -
3- Presentacion

entonces en la de datos manejas como se conecta a la base datos, como insertar x cosas, como borrar estas otras etc etc

ejemplo:

en la de negocio ya no hablas de eso sino por ejemplo de FACturar, donde facturar llama cosas de la capa de datos para insertar por ejemplo en la tabla factura, verificar permisos, leer informacion etc,

Y presentacion se comunicaria con la capa de negocios,asi:
el boton facturar se bloquea cuando no es un usuario autorizado, lo cual se sabe preguntando a la capa denegocio si el usuario es autorizado y esta a su ves lo sabe preguntandole algunas cosas a la capa de datos..

si el boton no esta bloqueado, al hacerle click se incia el proceso de facturacion, lo cual se le pide a la capa de negocios...
y si la factura esta ok, pues se pinta el OK en pantalla y se puede poner un boton que diga generar reporte el cual llama a la capa de negocio para hacer el reporte y una vez este esa hecho se actualiza la presentancion ... etc

Desde este punto de vista puedes hacer muchas cosas, pero yo propondria:
una dll para m

xjuanch0x dijo:
2.¿Como puedo hacer para que mi servicio web no sea consumido por aplicaciones ajenas a mi aplicacion ? Colocar seguridad en caso de alquien quiera consumir del servicio.Bacan muchas gracias por tu ayuda, te agradezco infinitamente . :D

lo mejor es generar a tu aplicacion un certificado digital, de tal forma que el web service verifique el certificado y sino es correcto entonces deniega las peticiones.

http://msdn.microsoft.com/en-us/library/ms996415.aspx
http://msdn.microsoft.com/en-us/library/ms978378.aspx
http://progtutorials.tripod.com/Authen.htm

;)
 
Man ya que se la respuesta, donde consigo esos certificados, hay que comprarlo o son gratuitos.
Es un tema importante, te recomiendo que investigues bien al respecto, ya que depende si publicaras o no tu aplicacion a internet o no, y sino pues puedes crear tu certificado con visual studio etc etc...

pero mientras lees acerca del tema lo mejor es que lo hagas con autenticacion desde la aplicacion, como se muestra aca:

http://progtutorials.tripod.com/Authen.htm
 

Los últimos mensajes

Los últimos temas