VS2010 .NET 4 - 这个简单的应用程序可以使用我的本地系统。当我在IIS 7 Web服务器上发布它时,当应用程序使用容器函数运行此Linq查询时,我收到此错误。
var results = view_UserInfoRepository.View_UserInfo.Where(x => x.Email.Contains(eMail)).OrderBy(x => x.Email);
2>'/'应用程序中的服务器错误。
值不能为空。参数名称:text描述:未处理 在执行当前Web请求期间发生异常。 请查看堆栈跟踪以获取有关错误的更多信息 它起源于代码。
异常详细信息:System.ArgumentNullException:值不能为null。 参数名称:text
来源错误:
执行期间生成了未处理的异常 当前的网络请求。有关的来源和位置的信息 可以使用下面的异常堆栈跟踪来识别异常。
堆栈追踪:
[ArgumentNullException:Value不能为null。参数名称:文字]
System.Data.Linq.SqlClient.SqlHelpers.GetStringContainsPattern(字符串 text,Char escape,Boolean& usedEscapeChar)+595083
System.Data.Linq.SqlClient.Visitor.TranslateStringMethod(SqlMethodCall mc)+797
System.Data.Linq.SqlClient.Visitor.VisitMethodCall(SqlMethodCall mc) +1149 System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)+2136 System.Data.Linq.SqlClient.SqlVisitor.VisitExpression(SqlExpression exp)+11
System.Data.Linq.SqlClient.SqlVisitor.VisitSelectCore(一个SQLSelect 选择)+48
System.Data.Linq.SqlClient.Visitor.VisitSelect(SqlSelect select)+20
System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)+1015
System.Data.Linq.SqlClient.SqlVisitor.VisitAlias(SqlAlias a)+16
System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)+430
System.Data.Linq.SqlClient.SqlVisitor.VisitSource(SqlSource source) +11 System.Data.Linq.SqlClient.SqlVisitor.VisitSelectCore(SqlSelect select)+26
System.Data.Linq.SqlClient.Visitor.VisitSelect(SqlSelect select)+20
System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)+1015
System.Data.Linq.SqlClient.SqlVisitor.VisitAlias(SqlAlias a)+16
System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)+430
System.Data.Linq.SqlClient.SqlVisitor.VisitSource(SqlSource source) +11 System.Data.Linq.SqlClient.SqlVisitor.VisitSelectCore(SqlSelect select)+26
System.Data.Linq.SqlClient.Visitor.VisitSelect(SqlSelect select)+20
System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)+1015
System.Data.Linq.SqlClient.SqlVisitor.VisitAlias(SqlAlias a)+16
System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)+430
System.Data.Linq.SqlClient.SqlVisitor.VisitSource(SqlSource source) +11 System.Data.Linq.SqlClient.SqlVisitor.VisitSelectCore(SqlSelect select)+26
System.Data.Linq.SqlClient.Visitor.VisitSelect(SqlSelect select)+20
System.Data.Linq.SqlClient.SqlVisitor.Visit(SqlNode node)+1015
System.Data.Linq.SqlClient.SqlProvider.BuildQuery(ResultShape resultShape,Type resultType,SqlNode node,ReadOnlyCollection1 parentParameters, SqlNodeAnnotations annotations) +805
1.System.Collections.Generic.IEnumerable.GetEnumerator() +34 System.Collections.Generic.List
System.Data.Linq.SqlClient.SqlProvider.BuildQuery(Expression query, SqlNodeAnnotations annotations) +155
System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query) +132
System.Data.Linq.DataQuery1..ctor(IEnumerable
1 collection)+315 System.Linq.Enumerable.ToList(IEnumerable1 source) +58
2个参数)+199
TSM.WebUI.Admin.Controllers.UserAdminController.SearchEMail(String eMail, Int32 page) in C:\Users\Jeff\Documents\Visual Studio 2010\Projects\TSM\TSM.WebUI.Admin\Controllers\UserAdminController.cs:180 lambda_method(Closure , ControllerBase , Object[] ) +151
System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) +17
System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext,ActionDescriptor actionDescriptor,IDictionary2 parameters) +27
1 continuation)+267
System.Web.Mvc.<>c__DisplayClassd.<InvokeActionMethodWithFilters>b__a() +56 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func
System.Web.Mvc&LT;&GT; C_ DisplayClassf.b _c() +20 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext,IList1 filters, ActionDescriptor actionDescriptor, IDictionary
2个参数)+190
System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext,String actionName)+345
System.Web.Mvc.Controller.ExecuteCore()+ 1155 System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) +42 System.Web.Mvc.ControllerBase.System.Web.Mvc.IController.Execute(RequestContext requestContext)+10
System.Web.Mvc。&lt;&gt; c_ DisplayClass8.b _4()+34
System.Web.Mvc.Async。&lt;&gt; c_ DisplayClass1.b _0()+ 21
System.Web.Mvc.Async。&lt;&gt; c__DisplayClass81.<BeginSynchronous>b__7(IAsyncResult _) +12 System.Web.Mvc.Async.WrappedAsyncResult
1.End()+55 System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +43 System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult) 结果)+9
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +8841105 System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean&amp; completedSynchronously)+184----------------------------------------------- ---------------------------------版本信息:Microsoft .NET Framework版本:4.0.30319; ASP.NET版本:4.0.30319.1
答案 0 :(得分:3)
好吧,我怀疑问题是eMail
为空。检查它的最简单方法是在开发框上的查询之前将设置 eMail
显式为null,并查看是否给出相同的结果。如果确实如此,你需要继续找出它为什么在生产中是空的而不是在开发中。