簡體   English   中英

無法隱式轉換類型'System.Linq.IQueryable?

[英]Cannot implicitly convert type 'System.Linq.IQueryable?

這是我的代碼,上面有錯誤

    public ActionResult  Edit(int id = 0)
    {
        KBS_Virtual_TrainingEntities db = new KBS_Virtual_TrainingEntities();
        UsersContext ctx = new UsersContext();
        UserProfile model = ctx.UserProfiles.Find(id);

        List<CourseSubscription> user_Course_subscriptions = new List<CourseSubscription>();



        foreach (UserSubscription sub in db.UserSubscriptions)
        {
            if (sub.ID == id)
            {
                user_Course_subscriptions.Add(sub.CourseSubscription);
            }
        }
        List<CourseSubscription> not_subscribe = db.CourseSubscriptions.Except(user_Course_subscriptions);

        var coursesList = from courses in not_subscribe
                          select new SelectListItem
                          {
                              Text = courses.Course.Name,
                              Value = courses.Course.ID
                              .ToString()
                          };
        var CoursesTYPE = from CourseTypes in db.CourseTypes.ToList()
                          select new SelectListItem
                          {
                              Text = CourseTypes.Name,
                              Value = CourseTypes.ID
                              .ToString()
                          };

        ViewBag.CourseID = coursesList;
        ViewBag.type = CoursesTYPE;
        return View(model);

    }

我正在嘗試使用上述代碼查找當前用戶未訂閱的課程訂閱,但無法正常工作?

您在Except函數的結果中缺少ToList 像這樣執行ToList

List<CourseSubscription> not_subscribe = db.CourseSubscriptions.Except(user_Course_subscriptions).ToList();

或者因為在您的代碼中您不需要執行任何需要列表的操作,所以只需對其進行var更改或為其分配正確的類型,例如IQueryable<CourseSubscription>

var not_subscribe = db.CourseSubscriptions.Except(user_Course_subscriptions);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM