mvc:使用LINQ在数据库中显示两行匹配的输入



我试图隐藏输入,如果在数据库中当前登录的用户已经在网站上发布了一个工作,如果UserID没有在数据库中添加任何东西,我希望该输入显示/

此时View中只显示'<<Span>

        @{
            var db = new JobSite3.Models.ApplicationDbContext();   
            var controller = new JobSite3.Controllers.BaseController(); 
        }
        @if (db.Jobs.Where(x => x.UserID == controller.LoggedUserId).Select(x => x.ID) != null)
        {
            <span>No input</span>
        }
        else
        {
            <div class="form-group">
                <div class="col-md-offset-1 col-md-10">
                    <input type="submit" value="Create" class="btn btn-default"/>
                </div>
            </div>
        }

根据Stephen Muecke的建议,我使我的代码工作,这里是解决方案,以防有人也需要:

控制器:

    // GET: Jobs/Create
    public ActionResult Create()
    {
       var query = db.Jobs.Where(x => x.UserID == LoggedUserId).Select(x => x.ID.ToString()).Any();
       ViewBag.HasJobs = query;
       return View();
    }

视图:

        @if (ViewBag.HasJobs != true)
        {
            <div class="form-group">
                <div class="col-md-offset-1 col-md-10">
                    <input type="submit" value="Create" class="btn btn-default" />
                </div>
            </div>
        }
        else
        {
            <div class="form-group">
                <div class="col-md-offset-1 col-md-10">
                    <input type="submit" value="Create" class="btn btn-default" disabled="disabled" />
                </div>
            </div>
        }

已经没有但是最后一个输入有一个禁用的参数,这是第一个意图。

相关内容

  • 没有找到相关文章