| ||||
| Normalmente usas la funcion DateDiff de VB.Net pero la puedes simular en C# y te podría quedar así: Cita: Igual y encuentras alguns errores en el redondedo pero solo basta con usar un integer en vez de un double.private double DateDiff(string howtocompare, System.DateTime startDate, System.DateTime endDate) { double diff=0; try { System.TimeSpan TS = new System.TimeSpan(startDate.Ticks-endDate.Ticks); switch (howtocompare.ToLower()) { case "m": diff = Convert.ToDouble(TS.TotalMinutes); break; case "s": diff = Convert.ToDouble(TS.TotalSeconds); break; case "t": diff = Convert.ToDouble(TS.Ticks); break; case "mm": diff = Convert.ToDouble(TS.TotalMilliseconds); break; case "yyyy": diff = Convert.ToInt64(TS.TotalDays/365); break; case "q": diff = Convert.ToDouble((TS.TotalDays/365)/4); break; default: diff = Convert.ToDouble(TS.TotalDays); break; } } catch (Exception e) { diff = -1; } return diff; } Pero en fin.. despues para llamarlo sería: Cita: Espero te sirva. System.DateTime dDate = Convert.ToDateTime("dia/mes/año"); Response.Write("Tu tienes " + DateDiff("yyyy",DateTime.Now,dDate) + " años"); Salu2
__________________ Nadie roba nada ya que en la vida todo se paga . . . Exentrit - Soluciones SharePoint & Net |
| |||
| Respuesta: calcular edad en visual studio .net C# probé la tuya Rootk porque tenia pereza de inventarme la rueda pero no me funcionó asi que hice esta:
Código:
private static string CarlcularEdadPersona( DateTime pFechaNacimientoPersona )
{
string resultado = string.Empty;
int anioNacimiento = pFechaNacimientoPersona.Year;
int anioActual = DateTime.Today.Year;
int aniosDiferencia = anioActual - anioNacimiento;
DateTime fechaNacimientoCalculo = new DateTime(DateTime.Today.Year, pFechaNacimientoPersona.Month, pFechaNacimientoPersona.Day);
TimeSpan diasFechaNacimiento = new DateTime( DateTime.Today.Year, 1, 1 ).Subtract( fechaNacimientoCalculo );
TimeSpan diasFechaActual = new DateTime( DateTime.Today.Year, 1, 1 ).Subtract( DateTime.Today );
if ( Math.Abs(diasFechaNacimiento.Days) >= Math.Abs(diasFechaActual.Days) )
{
resultado = aniosDiferencia.ToString();
}
else
{
resultado = ( aniosDiferencia - 1 ).ToString();
}
return resultado;
}
|
Este tema le ha gustado a 1 personas (incluyéndote)