Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080

    Fix

    Ho questa riga in VB da tradurre in C#...


    if Fix(TotalSize/PageSize) = TotalSize/PageSize then TotalPages = TotalPages -1

    Che ho tradotto in:

    if (Conversion.Fix(TotalSize / PageSize) == (TotalSize / PageSize)) TotalPages = TotalPages - 1;

    che però mi da l'errore: "Error3 The name 'Conversion' does not exist in the current context"

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    using vb = Microsoft.VisualBasic;

    if (vb.Conversion.Fix(*****


    oppure, se i valori non sono negativi

    Fix(n) = Math.Floor(n)
    Pietro

  3. #3
    guest.1
    Guest

    Re: Fix

    Originariamente inviato da Sonikag
    Ho questa riga in VB da tradurre in C#...


    if Fix(TotalSize/PageSize) = TotalSize/PageSize then TotalPages = TotalPages -1

    Che ho tradotto in:

    if (Conversion.Fix(TotalSize / PageSize) == (TotalSize / PageSize)) TotalPages = TotalPages - 1;

    che però mi da l'errore: "Error3 The name 'Conversion' does not exist in the current context"
    vedi se va bene:
    if (Fix(TotalSize / PageSize) == TotalSize / PageSize) TotalPages = TotalPages - 1;

    lo convertita con questo che è ottimo:
    http://converter.telerik.com/

    ciao.

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Il migliore traduttore è la propria testa:

    Questa è la frase da tradurre
    1° modo

    Fix è un metodo di una certa libreria che restituisce il valore intero troncato di un numero (se ho 1.5 mi restituisce 1)

    come ogni altra cosa nel mondo .Net, se mi interessa usare un metodo di una data classe contenuta in una dll, prima importo la dll, nel nostro caso Microsoft.VisualBasic

    Poi metto la direttiva using, nel nostro caso

    using Microsoft.VisualBasic;

    poi traduco così:

    if Fix(TotalSize/PageSize) = TotalSize/PageSize then TotalPages = TotalPages -1

    if (Conversion.Fix((double)TotalSize / (double)PageSize) == (double)TotalSize / (double)PageSize) TotalPages--;

    Però, dato che parliamo di numeri positivi, troncare un numero positivo significa usare il metodo Math.Floor, ed ecco perciò che si può fare, senza scomodare le librerie vb.net,

    if (Math.Floor((double)TotalSize / (double)PageSize) == (double)TotalSize / (double)PageSize) TotalPages--;

    per completezza, il metodo Fix fa questo:

    public static double Fix(double Number)
    {
    if (Number >= 0.0)
    {
    return Math.Floor(Number);
    }
    return -Math.Floor(-Number);
    }
    Pietro

  5. #5
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    Grazie mille risolto!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.