2010-07-15 2 views
2

J'essaie de mettre à niveau certains webparts Sharepoint 2007 vers SP2010 en utilisant les projets WebPart construits dans Visual Studio 2010. À savoir, j'utilise Visual Web Part pour migrer nos contrôles existants, qui utilisent largement ObjectDataSource. Cependant, lors de l'ajout d'un ODS au contrôle dans le projet Visual Web Part, il ne récupère pas les objets dans les projets de bibliothèque de classes référencés. Je suis en mesure de reproduire le problème à partir d'une configuration propre comme suit:Visual Web Part prend-il en charge ObjectDataSource dans le concepteur?

  1. Créer une nouvelle partie Visual Web

  2. Ajouter une nouvelle bibliothèque de classes à la solution.

  3. Code de classe est la suivante:

using System; en utilisant System.Collections.Generic; en utilisant System.Linq; en utilisant System.Text;

namespace WebPartODS 
{ 
    [System.ComponentModel.DataObject(true)] 
    public class TestUser 
    { 
    [System.ComponentModel.DataObjectMethod(System.ComponentModel.DataObjectMethodType.Select,false)] 
    public List<int> TestMethod() 
    { 
     return new List<int>(); 
    } 
    } 
} 
  1. Ajouter le projet de bibliothèque de classe comme une référence dans le projet Web Part

  2. Dans le fichier ascx de VisualWebPart, ajoutez un ObjectDataSource dans la vue Source:

<asp:ObjectDataSource ID="TestOD" runat="server"></asp:ObjectDataSour ce>

  1. Passer au En mode Design, affichez l'assistant "Configurer la source de données". Dans la liste déroulante, la classe du projet de bibliothèque n'apparaîtra pas.

Y at-il une étape qui me manque ici, ou y a-t-il un problème à essayer de le faire de cette façon?

Répondre

2

Ok, je l'ai eu pour travailler. Voici où j'ai eu ma réponse: MSDN Forumn

J'avais initialement une classe distincte pour ma couche de gestion. Je l'ai enlevé et mis mon code dans le fichier ascx.cs. Ensuite, j'ai ajouté la ligne de code suivante à ma méthode de chargement de page. J'ai également retiré le TypeName de la page ascx.

Questions connexes