J'essaye de tirer quelques données et l'insère dans un gridview. Mais je dois faire quelque chose de mal puisque je ne peux sélectionner qu'une seule colonne. Si j'essaie d'obtenir à la fois le prénom et le nom, ils seront simplement insérés dans le même td dans la grille.LINQ-to-sql + C#. Récupérer seulement quelques colonnes de la table à la grille
Méthode jusqu'à présent est:
public string[] ShowName()
{
LinqToEbuboo_20DataContext db = new LinqToEbuboo_20DataContext();
var myusers = from u in db.db_users
where u.uid > 13
select u.firstname;
return myusers.ToArray();
}
Je suis assez familier avec C# et LINQ (et gridviews pour cette cause), donc il est probablement un problème assez simple.
Il est construit comme ceci:
1) aspx (frontend)
2) webservice
3) C# (business logic)
4) database
La méthode affichée ici est dans la couche d'affaires et sera appelé à partir de la webservive qui renverra le résultat au frontend où le résultat sera lié à un gridview comme ceci:
GridView1.DataSource = s.showemail();
GridView1.DataBind();
---------- (fin de la question originale) --------------------
Suivre -up sur les réponses: C'est ce que je avoir construire maintenant en fonction de l'entrée. Cela ne fonctionne toujours pas. Depuis aspx, où j'essaie de définir la source de données pour le gridview, une erreur s'affiche. Quelque chose avec une référence qui est nécessaire. Mais en essayant de créer je ne peux pas en raison d'une boucle dans les références ...
User.cs
namespace Ebuboo
{
public class User
{
public PersonName[] ListStrangers()
{
LinqToEbuboo_20DataContext db = new LinqToEbuboo_20DataContext();
var myusers = from u in db.db_users
where u.uid > 12
select new PersonName { FirstName = u.firstname, LastName = u.lastname };
return myusers.ToArray();
}
}
}
public class PersonName
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
}
Les ListStrangers() est appelée à partir d'un webservice:
[WebMethod]
public PersonName[] ws_listUsers()
{
User u = new User();
return u.ListStrangers();
}
Et la webservice est appelé à partir d'un aspx qui essaie de lier le résultat à un gridview:
// create instance of webservice
Ebuboo_WS.Service1 s = new Ebuboo_WS.Service1();
// Bind and output result in Gridview
GvListUsers.DataSource = s.ws_listUsers();
GvListUsers.DataBind();
Br.
Si vous n'êtes pas familier avec C# et LINQ (et gridviews pour cela), pourquoi ne pas acheter un livre ou lire la documentation MSDN? –
Salut. J'ai eu le "Programming C# 3.0" de Jesse Liberty. Je travaille à plein temps avec php sur des serveurs linux, mais je viens de commencer à étudier les technologies Microsoft. C# n'est pas la seule chose nouvelle. La plupart sont nouveaux, comme C#, LINQ, tout le framework .net et Visual Studio. Il est juste trop grand pour saisir et comprendre en une seule fois. Mais je suis bien managé et ne pose que des questions quand je suis coincé. – Tillebeck
Il semble que je ne peux pas simplement renvoyer PersonName []. J'ai essayé d'écrire dans ma question comment je l'ai fait. Si vous pouvez y voir une erreur, je l'apprécierai. – Tillebeck