3

私は以下を機能させようとしています。フィールドFirstNameLastName、およびDoctorIdを持つテーブルがあります。Linq to SQL を使用して .net ListBox を設定したいと思います。私が見つけて借りたものは次のとおりです。

私がDALClassと呼んだクラスでは:

public List<Doctor> GetListDoctorsNames()
{
  using (var db = new WaitListDataContext())
  {
    return (from c in db.Doctors
            select new
            {
              FullName = c.FirstName + " " + c.LastName,
              DoctorId = c.DoctorId
            }
            ).ToList<Doctor>;
  }
}

エラーは ").ToList;" に関係しています。ライン。エラーは次のとおりです。

エラー 1 メソッド グループ 'ToList' を非デリゲート型 'System.Collections.Generic.List' に変換できません。メソッドを呼び出すつもりでしたか? Q:\myapp\WaitList\App_Code\DALClass.cs 37 16 Q:\myapp\WaitList\

<String>の代わりに置くべきかどうかわかりません<Doctor>。私はそれを試しましたが、うまくいきません。

4

4 に答える 4

2

Doctorクラスは実際にはデータベースコンテキストからのエンティティであると想定しています。その場合、独自の型を作成し、 ではなくそれを返す必要がありますDoctor

public List<MyDoctor> GetListDoctorsNames()
{
  using (var db = new WaitListDataContext())
  {
      return db.Doctors.Select(c => new MyDoctor()
             {
                 FullName = c.FirstName + " " + c.LastName,
                 DoctorId = c.DoctorId
             }).ToList();
  }
}

public class MyDoctor
{
  public string FullName {get; set;} 
  public int DoctorId {get; set;} //Or what ever type DoctorId is
}
于 2013-09-13T22:38:29.933 に答える
0

ToList<>() メソッドを実行しようとしていることを示す括弧がないだけだと思います:)

using (var db = new WaitListDataContext())
{
  return (from c in db.Doctors
        select new
        {
          FullName = c.FirstName + " " + c.LastName,
          DoctorId = c.DoctorId
        }
      ).ToList<Doctor>();

}

于 2013-09-13T22:25:11.477 に答える