28

ユーザー名とそのコメント、およびユーザー名の下の各コメントの添付ファイルを表示するために、データ リストを使用したいと考えています。

ReviewListコメントを表示するためのユーザーコントロールがありますefiles。しかし、この行 (s.tblDraft.Comments) と以下のエラーにエラーがあります。

The non-generic type 'System.Collections.IEnumerable' cannot be used with type arguments

助けてください。何が問題ですか?

private void Displayuser()
{
    var reviews =
      (from s in _DataContext.tblSends
       from u in _DataContext.Users

       where (s.DraftId == _Draftid) && (s.ToEmailId == u.ID)
       orderby u.Name
       select new
{
    userid = u.ID,
    username = u.Name,
    comments =s.tblDraft.Comments,
    w = s.tblDraft.Comments.SelectMany(q => q.CommentAttaches)

}).Distinct();

    DataList1.DataSource = reviews;
    DataList1.DataBind();

    var theReview = reviews.Single();

    DisplayReviews(theReview.comments, theReview.w);
}

private void DisplayReviews(IEnumerable<Comment> comments,
     IEnumerable<CommentAttach> w)
{
    ReviewList reviewList = (ReviewList)DataList1.FindControl("ReviewList1");
    reviewList.Comments = comments;
    reviewList.CommentAttachs = w;
    reviewList.DataBind();
}
4

2 に答える 2

68

コンパイラーが認識するタイプSystem.Collections.IEnumerableは、非ジェネリックIEnumerableです。その名前空間をインポートしたので、これはコンパイラが使用しようとしていると考えるタイプです。

使用しようとしているタイプはですSystem.Collections.Generic.IEnumerable<T>。その名前空間のインポートを追加すると、コンパイルする必要があります。

于 2013-01-20T19:04:06.860 に答える