2010-03-23 5 views
1

J'ai du mal à obtenir une ObjectDataSource personnalisée pour un contrôle ASP: ListView. J'ai la classe pour le DataSource dans le répertoire App_Code de l'application Web (comme requis par le contrôle asp: ListView).Référence d'assembly du répertoire ASP_NET App_Code

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Configuration; 
using System.Data; 
using System.Data.Common; 
using System.Web; 
using System.DirectoryServices; 

    [DataObject] 
    public class UsersDAL 
    { 
     [DataObjectMethod(DataObjectMethodType.Select)] 
     public List<User> LoadAll(int startIndex, int maxRows, string sortedBy) 
     { 
      List<User> users = new List<User>(); 

      DirectoryEntry entry; 

      return users; 
     } 
    } 

Dès que j'ajoute using System.DirectoryServices; les accidents de la page avec ce message:
Compiler Error Message: CS0234: The type or namespace name 'DirectoryServices' does not exist in the namespace 'System' (are you missing an assembly reference?)
Sans l'utilisation de System.DirectoryServices Les charges de page sans problème.

La référence est là, elle travaille dans des classes en dehors du répertoire App_Code.

+0

Vous manquez une référence d'assemblage? Cela semble stupide mais vérifiez encore. – tsinik

Répondre

3

Je soupçonne une confusion entre Web Application Project et un site Web. Lequel avez-vous?

Avez-vous une référence à System.DirectoryServices dans votre fichier web.config? Probablement pas. Et c'est pourquoi ça ne marche pas.

Si vous avez un projet d'application Web, n'utilisez plus App_Code. C'est inutile et potentiellement dangereux. Par exemple, votre problème ici.

+1

Je suppose que vous avez raison. J'ai supprimé le projet et démarré à partir de Scratch, et maintenant il fonctionne sans le répertoire App_Code. Je ne suis pas entièrement sûr de ce que j'ai fait différent cette fois-ci. –

Questions connexes