尝试从MongoDB BsonArray转换为IEnumerable <Users> POCO实例的集合时引发错误 - javascript

所有:

这是有关我的开发环境的信息:

MongoDB 3.0.0

MongoDB C#驱动程序版本1.7.0.4714

Microsoft Visual Studio专业版2013

.NET Framework 4.0

这是我们项目中使用的POCO类之一:

    public class AppUsers
        {

            public Object Id { get; set; }
            public int UserID { get; set; }
            public int CompanyID { get; set; }
            public string Username { get; set; }
            public string Password { get; set; }
            public int RoleID { get; set; }
        public DateTime LoginTime { get; set; }
        public DateTime LogoutTime { get; set; }
    }

这是一个查询MongoDB数据库的AppUsers集合的准存储过程JavaScript函数:

function (userIdArg 
              , companyIdArg
                 , searchTermArg
                    , referenceRoleIdOfInterestArg
                     , startRowOfInterestArg
                       , displayedRowsQuantityArg
                        , sortColumnArg
                        , isAscendingArg){



    var usrColl = [];                  


        usrColl = db.getCollection('AppUsersCollection').find(   {     "CompanyID" : companyIdArg }).sort( { sortColumnArg : isAscendingArg } ).skip(startRowOfInterestArg).limit(displayedRowsQuantityArg).toArray();

returns usrColl;
}

这是客户端代码的摘录,它将调用上述JavaScript代码:

            var sysJs = DBConnection.database.GetCollection("system.js");

            sysJs.Remove(Query.EQ("_id", "getUsers"));

            var code = File.ReadAllText(HttpContext.Current.Server.MapPath("~/Hos/quasiStoredProceduresJS/getUsers.js"));


            var codeDocument = new BsonDocument("value", new    BsonJavaScript(code));

            codeDocument.Add(new BsonElement("_id", "getUsers"));

            sysJs.Insert(codeDocument);

 BsonValue getUsers = DBConnection.database.Eval("getUsers");


            BsonValue bv3 =  DBConnection.database.Eval(getUsers.AsBsonJavaScript.Code, null
                                                                                            ,
loggedInUser.CompanyID
                                                                                                     ,
searchTermArg
                                                                                                      ,
ApplicationConstants.DriverRole
                                                                                                   ,
startRowOfInterest
                                                                                                    ,
displayedRowsQuantity
                                                                                                     ,
sortColumn
                                                                                                     ,
isAscending);


            IEnumerable<Users> usersOfInterestList =     bv3.AsBsonArray.AsQueryable();

上述行是我遇到麻烦的地方,它给我以下错误:

Error   90  Cannot implicitly convert type     'System.Linq.IQueryable<MongoDB.Bson.BsonValue>' to     'System.Collections.Generic.IEnumerable<Users>'. An explicit conversion     exists (are you missing a cast?) 

如何实现代码,以便可以轻松地将包含Users的BSONArray转换为IEnumerable集合?

提前致谢。

参考方案

我使用BsonSerializer对JSON进行反序列化,如以下代码行所示:

IEnumerable<AppUsers> usersOfInterestList =     BsonSerializer.Deserialize<List<AppUsers>>(bv3.ToJson());

在<select>元素上忽略了DDSlick的“ selected”属性 - javascript

我正在使用以下jQuery插件:http://designwithpc.com/Plugins/ddSlick要在下拉列表中显示可选图像,请选择框。它与我尝试使用已选择的选项加载html时非常有用,但在DDSlick中未选择此选项(因此它仅显示第一个选择的选项)。如何转换:<select class="homepage_icon" …

用symfony隐藏树枝中的表格行 - javascript

我正在开始编码。我正在使用Symfony 3.3我想用复选框隐藏(并显示)表上的a或某些特定行。我尝试使用javascript和jquery。我希望隐藏的行保持隐藏状态。我不知道该怎么做。这是我的树枝{% block body %} <div class="container"> <h3>List of produ…

表单不提交或按钮提交不起作用 - javascript

据我所知,此代码必须有效,但是我编码时却无效问题在于该表单未提交。我该如何解决?选中时,我什至没有得到复选框的值。<table id="example" class="display" cellspacing="0" width="100%"> <thead&g…

单击<span>标记以运行JQuery javascript函数[重复] - javascript

This question already has answers here: Event binding on dynamically created elements? (23个答案) 2年前关闭。 我使用PHP这样创建跨度。if ($subnetkey == 1 ) { echo ("<span class='subnetke…

用多个通配符替换正则表达式可在PHP中工作,而不能在JavaScript中工作 - javascript

我正在尝试为两个Markdown解析器实现中心对齐:在Parsedown的PHP中(成功)在Bootstrap Markdown的JavaScript中(未成功)我遵循并找到最简单的方法是使用最终的HTML输出,只需将内联样式捕捉到标签上即可。以下正则表达式可以满足我的需要,它会根据需要将style="text-align:center;"…