2009-07-23 4 views

Répondre

2

Le site que vous avez mentionné n'utilise pas un ensemble aléatoire d'images. Ils sont codés dans le côté html de la page aspx.

Vous pouvez placer un contrôle Image d'asp sur votre page. Ensuite, sur la page Page_Load de la page, réglez l'image sur une image aléatoire de votre téléviseur.

protected void Page_Load(object sender, EventArgs e) 
     { 

      this.Image1.ImageUrl = "~/images/random3.jpg"; 
     } 

Vous avez différentes options pour stocker les données d'ensemble d'images. Vous pouvez utiliser une base de données et stocker les URL dans une table. Cela permettrait d'utiliser la fonction intégrée Random trouvée dans SQL. Ou vous pouvez enregistrer un fichier XML sur le serveur, chargez-le puis utilisez la classe Random .Net pour choisir l'un de vos nœuds xml.

Personnellement, je recommanderais la solution de base de données.

EDIT: Étant donné que la session du serveur est détruite au bout de 20 minutes, vous pouvez envisager d'utiliser des cookies afin de pouvoir voir la dernière image aléatoire qu'ils ont vue.

0
string imageDir = "/images/banner/"; 

public static string chooseImage(string imageDir) 
     { 
      string[] dirs = Directory.GetFiles(HttpContext.Current.Server.MapPath("~/images/" + imageDir + "/"), "*.*"); 
      Random RandString = new Random(); 

      string fileFullPath = dirs[RandString.Next(0, dirs.Length)]; 

      // Do not show Thumbs.db --- 
      string fileName = string.Empty; 
      do 
      { 
       fileName = System.IO.Path.GetFileName(fileFullPath); 

      } while (fileName.Contains(".db")); 


      string imgPath = "/images/" + imageDir + "/" + fileName; 
      return imgPath; 
     } 

     private int RandomNumber(int min, int max) 
     { 
      Random random = new Random(); 
      return random.Next(min, max); 
     } 
Questions connexes