Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MongoDB MongoCollection<;BsonDocument>;。可询问的问题_C#_Linq_Mongodb .net Driver - Fatal编程技术网

C# MongoDB MongoCollection<;BsonDocument>;。可询问的问题

C# MongoDB MongoCollection<;BsonDocument>;。可询问的问题,c#,linq,mongodb-.net-driver,C#,Linq,Mongodb .net Driver,为什么下面的代码在运行时失败 MongoCollection<BsonDocument> tempCollection = DBHelper.GetInstance().TempCollection(); IList<BsonDocument> documents = (from d in tempCollection.AsQueryable() where d["Form"].AsStri

为什么下面的代码在运行时失败

MongoCollection<BsonDocument> tempCollection = DBHelper.GetInstance().TempCollection();
IList<BsonDocument> documents = (from d in tempCollection.AsQueryable()
                                         where d["Form"].AsString == id
                                         select d).ToList();
MongoCollection tempCollection=DBHelper.GetInstance().tempCollection();
IList文档=(来自tempCollection.AsQueryable()中的d)
其中d[“Form”].AsString==id
选择d).ToList();
虽然这很好用

MongoCollection<BsonDocument> tempCollection = DBHelper.GetInstance().TempCollection();
IList<BsonDocument> documents = (from d in tempCollection.FindAll()
                                         where d["Form"].AsString == id
                                         select d).ToList();
MongoCollection tempCollection=DBHelper.GetInstance().tempCollection();
IList文档=(来自tempCollection.FindAll()中的d)
其中d[“Form”].AsString==id
选择d).ToList();
“id”是一个字符串类型的参数,用于我的函数,其中包含此代码

我得到以下运行时错误:

System.FormatException
Input string was not in the correct format

Description: HTTP 500.Error processing request.

Details: Non-web exception. Exception origin (name of application or object): mscorlib.
Exception stack trace:
at int.Parse (string,System.Globalization.NumberStyles,System.IFormatProvider) [0x00012] in /home/karim/.yaourt/yaourt-tmp-karim/aur-mono-git/src/mono/mcs/class/corlib
/System/Int32.cs:639 at int.Parse (string,System.IFormatProvider) [0x00000] in /home/karim/.yaourt/yaourt-tmp-karim/aur-mono-git/src/mono/mcs/class/corlib/System/Int32.cs:205 at System.Convert.ToInt32 (string,System.IFormatProvider) [0x00008] in /home/karim/.yaourt/yaourt-tmp-karim/aur-mono-git/src/mono/mcs/class/corlib/System/Convert.cs:1135 at string.System.IConvertible.ToInt32 (System.IFormatProvider) [0x00000] in /home/karim/.yaourt/yaourt-tmp-karim/aur-mono-git/src/mono/mcs/class/corlib/System/String.cs:2482 at System.Convert.ToInt32 (object,System.IFormatProvider) [0x00008] in /home/karim/.yaourt/yaourt-tmp-karim/aur-mono-git/src/mono/mcs/class/corlib/System/Convert.cs:1173 at System.Convert.ToInt32 (object) [0x00008] in /home/karim/.yaourt/yaourt-tmp-karim/aur-mono-git/src/mono/mcs/class/corlib/System/Convert.cs:1166 at MongoDB.Driver.Linq.Utils.BsonSerializationInfoFinder.VisitGetItem (System.Linq.Expressions.MethodCallExpression) <IL 0x00028, 0x001ab> at MongoDB.Driver.Linq.Utils.BsonSerializationInfoFinder.VisitMethodCall (System.Linq.Expressions.MethodCallExpression) <IL 0x00035, 0x00133> at MongoDB.Driver.Linq.ExpressionVisitor`1<MongoDB.Bson.Serialization.BsonSerializationInfo>.Visit (System.Linq.Expressions.Expression) <0x004e8> at MongoDB.Driver.Linq.Utils.BsonSerializationInfoFinder.Visit (System.Linq.Expressions.Expression) <IL 0x00014, 0x000af> at MongoDB.Driver.Linq.Utils.BsonSerializationInfoFinder.VisitMember (System.Linq.Expressions.MemberExpression) <IL 0x00007, 0x0008c> at MongoDB.Driver.Linq.ExpressionVisitor`1<MongoDB.Bson.Serialization.BsonSerializationInfo>.Visit (System.Linq.Expressions.Expression) <0x00467> at MongoDB.Driver.Linq.Utils.BsonSerializationInfoFinder.Visit (System.Linq.Expressions.Expression) <IL 0x00014, 0x000af> at MongoDB.Driver.Linq.Utils.BsonSerializationInfoFinder.GetSerializationInfo (System.Linq.Expressions.Expression,System.Collections.Generic.Dictionary`2<System.Linq.Expressions.Expression, MongoDB.Bson.Serialization.BsonSerializationInfo>) <IL 0x00009, 0x0009e> at MongoDB.Driver.Linq.Utils.BsonSerializationInfoHelper.GetSerializationInfo (System.Linq.Expressions.Expression) <IL 0x0000e, 0x0006f> at MongoDB.Driver.Linq.PredicateTranslator.BuildComparisonQuery (System.Linq.Expressions.Expression,System.Linq.Expressions.ExpressionType,System.Linq.Expressions.ConstantExpression) <IL 0x00140, 0x005d7> at MongoDB.Driver.Linq.PredicateTranslator.BuildComparisonQuery (System.Linq.Expressions.BinaryExpression) <IL 0x0008c, 0x003f7> at MongoDB.Driver.Linq.PredicateTranslator.BuildQuery (System.Linq.Expressions.Expression) <IL 0x000e6, 0x003eb> at MongoDB.Driver.Linq.SelectQuery.BuildQuery () <IL 0x00024, 0x000f3> at MongoDB.Driver.Linq.SelectQuery.Execute () <IL 0x0005c, 0x002bb> at MongoDB.Driver.Linq.MongoQueryProvider.Execute (System.Linq.Expressions.Expression) <IL 0x00017, 0x000b8> at MongoDB.Driver.Linq.MongoQueryable`1<MongoDB.Bson.BsonDocument>.GetEnumerator () <0x0004b> at System.Collections.Generic.List`1<MongoDB.Bson.BsonDocument>.AddEnumerable (System.Collections.Generic.IEnumerable`1<MongoDB.Bson.BsonDocument>) <0x00067> at System.Collections.Generic.List`1<MongoDB.Bson.BsonDocument>..ctor (System.Collections.Generic.IEnumerable`1<MongoDB.Bson.BsonDocument>) <0x0015f> at System.Linq.Enumerable.ToList<MongoDB.Bson.BsonDocument> (System.Collections.Generic.IEnumerable`1<MongoDB.Bson.BsonDocument>) <0x00077> at BusinessFlowManager.Controllers.FormController.Preview (string) [0x0012b] in /home/karim/MonoDevelopProjects/BusinessFlowManager/BusinessFlowManager/Controllers/SetupControllers/FormController.cs:139 at (wrapper dynamic-method) object.lambda_method (System.Runtime.CompilerServices.Closure,System.Web.Mvc.ControllerBase,object[]) <IL 0x0000e, 0x000b6> at System.Web.Mvc.ActionMethodDispatcher.Execute (System.Web.Mvc.ControllerBase,object[]) <IL 0x00008, 0x00054> at System.Web.Mvc.ReflectedActionDescriptor.Execute (System.Web.Mvc.ControllerContext,System.Collections.Generic.IDictionary`2<string, object>) <IL 0x0007a, 0x003af> at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod (System.Web.Mvc.ControllerContext,System.Web.Mvc.ActionDescriptor,System.Collections.Generic.IDictionary`2<string, object>) <IL 0x00003, 0x00067> at System.Web.Mvc.ControllerActionInvoker/<>c__DisplayClass15.<InvokeActionMethodWithFilters>b__12 () <IL 0x0002d, 0x000d0> at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter (System.Web.Mvc.IActionFilter,System.Web.Mvc.ActionExecutingContext,System.Func`1<System.Web.Mvc.ActionExecutedContext>) <IL 0x00031, 0x001ca> 
System.FormatException
输入字符串的格式不正确
描述:HTTP 500。处理请求时出错。
详细信息:非web异常。异常源(应用程序或对象的名称):mscorlib。
异常堆栈跟踪:
在/home/karim/.yaourt/yaourt-tmp-karim/aur-mono-git/src/mono/mcs/class/corlib中的int.Parse(string,System.Globalization.NumberStyles,System.ifformatprovider)[0x00012]
/System/Int32.cs:639 at int.Parse(string,System.IFormatProvider)[0x00000]in/home/karim/.yaourt/yaourt tmp karim/aur mono-git/src/mono/mcs/class/corlib/System/Int32.cs:205 at System.Convert.ToInt32(string,System.IFormatProvider)[0x00008]在/home/karim/.yaourt/yaourt-tmp-karim/aur-mono-git/src/mono/mcs/class/corlib/System/Convert.cs:1135 at-string.System.IConvertible.ToInt32(System.IFormatProvider)[0x00000 in/home/karim/.yaourt/yaourt-tmp-karim/aur-mono-git/src/mono/mcs/class/corlib/System/string.cs:2482 at-System.Convert.ToInt32(object,System.IFormatProvider)[0x00008]在/home/karim/.yaourt/yaourt-tmp-karim/aur-mono-git/src/mono/mcs/class/corlib/System/Convert.cs:1173 at-System.Convert.ToInt32(object)[0x00008]in/home/karim/.yaourt/yaourt-tmp-karim/aur-mono-git/src/mono/mcs/class/corlib/System/Convert.cs:1166 at-MongoDB.Driver.Linq.Utils.bsonserializationinfo.visittem(System.Linq.Expressions.MethodCallExpression)位于MongoDB.Driver.Linq.Utils.BsonSerializationInfoFinder.VisitMethodCall调用(System.Linq.Expressions.MethodCallExpression)位于MongoDB.Driver.Linq.ExpressionVisitor`1.Visite(System.Linq.Expressions.Expression)位于MongoDB.Driver.Linq.Utils.BsonSerializationInfoFinder.VisiteMongoDB.Driver.Linq.Utils.bsonserializationInfo.VisitMember(System.Linq.Expressions.MemberExpression)中的(System.Linq.Expressions.Expression.Expression.Expression)在MongoDB.Driver.Linq.Utils.bsonserializationInfo.Visit(System.Linq.Expressions.Expression)中位于MongoDB.Driver.Linq.Utils.BSonserializationInfo.GetSerializationInfo(System.Linq.Expressions.Expression,System.Collections.Generic.Dictionary`2),位于MongoDB.Driver.Linq.Utils.BSonserializationInfo Helper.GetSerializationInfo(System.Linq.Expressions.Expressions),位于MongoDB.Driver.Linq.PredicateTranslator.BuildComparisonQuery(System.Linq.Expressions.Expression,System.Linq.Expressions.ExpressionType,System.Linq.Expressions.ConstantExpression)位于MongoDB.Driver.Linq.PredicateTranslator.BuildComparisonQuery(System.Linq.Expressions.BinaryExpression),位于MongoDB.Driver.Linq.PredicateTranslator.BuildQuery(System.Linq.Expressions.Expression)位于MongoDB.Driver.Linq.SelectQuery.BuildQuery()处位于MongoDB.Driver.Linq.SelectQuery.Execute()处位于MongoDB.Driver.Linq.MongoQuery Provider.Execute(System.Linq.Expressions.Expression)处位于MongoDB.Driver.Linq.SelectQuery.BuildQuery()处位于MongoDB.Driver.Linq.Linq.MongoQuery.Expression处位于System.Linq.Enumerable.ToList(System.Collections.Generic.IEnumerable`1)处的System.Collections.Generic.List`1..ctor(System.Collections.Generic.IEnumerable`1)处的BusinessFlowManager.Controller.FormController.Preview(字符串)[0x0012b]在/home/karim/monodevelopments/BusinessFlowManager/BusinessFlowManager/Controllers/SetupControllers/FormController.cs:139 at(包装动态方法)object.lambda_方法(System.Runtime.CompilerServices.Closure,System.Web.Mvc.ControllerBase,object[])at System.Web.Mvc.ActionMethodDispatcher.Execute(System.Web.Mvc.ControllerBase,object[])在System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(System.Web.Mvc.ControllerContext,System.Collections.Generic.IDictionary`2)中的System.Web.Mvc.ReflectedActionDescriptor.Execute(System.Web.Mvc.ControllerContext,System.Web.Mvc.ActionDescriptor,System.Collections.Generic.IDictionary`2)System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter上的System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(System.Web.Mvc.IActionFilter,System.Web.Mvc.ActionExecutingContext,System.Func`1)上显示Class15.b\uu 12()
任何解释或协助都将不胜感激。 谢谢

编辑: 我修改了代码,将Find方法与MongoQuery结合使用,而不是使用AsQueryable扩展

MongoCollection<BsonDocument> tempCollection = DBHelper.GetInstance().TempCollection();
IList<BsonDocument> documents = tempCollection.Find(Query.EQ("Form",id)).ToList();
MongoCollection tempCollection=DBHelper.GetInstance().tempCollection();
IList documents=tempCollection.Find(Query.EQ(“Form”,id)).ToList();

请格式化您的异常文本,人们可能不会阅读它,因为必须在其中水平滚动非常烦人。