C# InvalidCastException:无法强制转换类型为';System.Int32';输入';System.String';

C# InvalidCastException:无法强制转换类型为';System.Int32';输入';System.String';,c#,asp.net-mvc,linq,.net-4.0,C#,Asp.net Mvc,Linq,.net 4.0,因此,我尝试将一些linq数据从我的控制器传递到我的视图,就像 但每次我的控制器看起来像这样时,我都会得到一个InvalidCastException: public ActionResult Account() { return View(data.FailitatorParentLists.ToList()); } 任何帮助都将不胜感激 [InvalidCastException: Unable to cast object of type 'System.

因此,我尝试将一些linq数据从我的控制器传递到我的视图,就像

但每次我的控制器看起来像这样时,我都会得到一个InvalidCastException:

public ActionResult Account()
    {
        return View(data.FailitatorParentLists.ToList());
    }
任何帮助都将不胜感激

[InvalidCastException: Unable to cast object of type 'System.Int32' to type 'System.String'.]
System.Data.SqlClient.SqlBuffer.get_String() +5271065
System.Data.SqlClient.SqlDataReader.GetString(Int32 i) +75
Read_FacilitatorParentList(ObjectMaterializer`1 ) +2677
System.Data.Linq.SqlClient.ObjectReader`2.MoveNext() +32
System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) +381
System.Linq.Enumerable.ToList(IEnumerable`1 source) +58
Omega.Controllers.ParentsController.Account(String returnUrl) in    c:\Users\chrism\Documents\Visual Studio 2012\Projects\Omega\Omega- Source\Omega\Controllers\ParentsController.cs:38
lambda_method(Closure , ControllerBase , Object[] ) +180
System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) +59
System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) +435
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +60
System.Web.Mvc.Async.AsyncControllerActionInvoker.InvokeSynchronousActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +50
System.Web.Mvc.Async.<>c__DisplayClass42.<BeginInvokeSynchronousActionMethod>b__41() +75
System.Web.Mvc.Async.<>c__DisplayClass8`1.<BeginSynchronous>b__7(IAsyncResult _) +44
System.Web.Mvc.Async.WrappedAsyncResult`1.End() +139
System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +102
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) +49
System.Web.Mvc.Async.<>c__DisplayClass39.<BeginInvokeActionMethodWithFilters>b__33() +126
System.Web.Mvc.Async.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49() +323
System.Web.Mvc.Async.<>c__DisplayClass37.<BeginInvokeActionMethodWithFilters>b__36(IAsyncResult asyncResult) +44
System.Web.Mvc.Async.WrappedAsyncResult`1.End() +139
System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +102
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult) +50
System.Web.Mvc.Async.<>c__DisplayClass2a.<BeginInvokeAction>b__20() +68
System.Web.Mvc.Async.<>c__DisplayClass25.<BeginInvokeAction>b__22(IAsyncResult asyncResult) +184
System.Web.Mvc.Async.WrappedAsyncResult`1.End() +136
System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +56
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +40
System.Web.Mvc.<>c__DisplayClass1d.<BeginExecuteCore>b__18(IAsyncResult asyncResult) +40
System.Web.Mvc.Async.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar) +47
System.Web.Mvc.Async.WrappedAsyncResult`1.End() +151
System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +59
System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +40
System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +44
System.Web.Mvc.Async.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar) +47
System.Web.Mvc.Async.WrappedAsyncResult`1.End() +151
System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +59
System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +40
System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +39
System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) +39
System.Web.Mvc.<>c__DisplayClass8.<BeginProcessRequest>b__3(IAsyncResult asyncResult) +45
System.Web.Mvc.Async.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar) +47
System.Web.Mvc.Async.WrappedAsyncResult`1.End() +151
System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +59
System.Web.Mvc.Async.AsyncResultWrapper.End(IAsyncResult asyncResult, Object tag) +40
System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +40
System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +38
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +9629296
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155
[InvalidCastException:无法将类型为'System.Int32'的对象强制转换为类型为'System.String'
System.Data.SqlClient.SqlBuffer.get_String()+5271065
System.Data.SqlClient.SqlDataReader.GetString(int32i)+75
Read_FacilitatorParentList(ObjectMaterialer`1)+2677
System.Data.Linq.SqlClient.ObjectReader`2.MoveNext()+32
System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)+381
System.Linq.Enumerable.ToList(IEnumerable`1源)+58
c:\Users\chrism\Documents\Visual Studio 2012\Projects\Omega\Omega-Source\Omega\Controllers\ParentsController.Account(字符串返回URL)中的Omega.Controllers.ParentsController.Account
lambda_方法(闭包、控制器基、对象[])+180
System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase控制器,对象[]参数)+59
System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext ControllerContext,IDictionary`2参数)+435
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext ControllerContext,ActionDescriptor ActionDescriptor,IDictionary`2参数)+60
System.Web.Mvc.Async.AsyncControllerActionInvoker.InvokeSynchronousActionMethod(ControllerContext ControllerContext,ActionDescriptor ActionDescriptor,IDictionary`2参数)+50
System.Web.Mvc.Async.c__显示类42.b__41()+75
System.Web.Mvc.Async.c_uuuudisplayClass8`1.b_uuuu7(IAsyncResult)+44
System.Web.Mvc.Async.WrappedAsyncResult`1.End()+139
System.Web.Mvc.Async.asyncResultRapper.End(IAsyncResult asyncResult,对象标记)+102
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult)+49
System.Web.Mvc.Async.c__显示类39.b__33()+126
System.Web.Mvc.Async.c__DisplayClass4f.b__49()+323
System.Web.Mvc.Async.c__显示类37.b__36(IAsyncResult asyncResult)+44
System.Web.Mvc.Async.WrappedAsyncResult`1.End()+139
System.Web.Mvc.Async.asyncResultRapper.End(IAsyncResult asyncResult,对象标记)+102
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult)+50
System.Web.Mvc.Async.c__DisplayClass2a.b__20()+68
System.Web.Mvc.Async.c__显示类25.b__22(IAsyncResult asyncResult)+184
System.Web.Mvc.Async.WrappedAsyncResult`1.End()+136
System.Web.Mvc.Async.asyncResultRapper.End(IAsyncResult asyncResult,对象标记)+56
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult)+40
System.Web.Mvc.c_uuudisplayClassId.b_uuu18(IAsyncResult asyncResult)+40
System.Web.Mvc.Async.c__显示类4.b__3(IAsyncResult ar)+47
System.Web.Mvc.Async.WrappedAsyncResult`1.End()+151
System.Web.Mvc.Async.asyncResultRapper.End(IAsyncResult asyncResult,对象标记)+59
System.Web.Mvc.Async.asyncResultRapper.End(IAsyncResult asyncResult,对象标记)+40
System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult)+44
System.Web.Mvc.Async.c__显示类4.b__3(IAsyncResult ar)+47
System.Web.Mvc.Async.WrappedAsyncResult`1.End()+151
System.Web.Mvc.Async.asyncResultRapper.End(IAsyncResult asyncResult,对象标记)+59
System.Web.Mvc.Async.asyncResultRapper.End(IAsyncResult asyncResult,对象标记)+40
System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult)+39
System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult)+39
System.Web.Mvc.c_uuuudisplayClass8.b_uuuu3(IAsyncResult asyncResult)+45
System.Web.Mvc.Async.c__显示类4.b__3(IAsyncResult ar)+47
System.Web.Mvc.Async.WrappedAsyncResult`1.End()+151
System.Web.Mvc.Async.asyncResultRapper.End(IAsyncResult asyncResult,对象标记)+59
System.Web.Mvc.Async.asyncResultRapper.End(IAsyncResult asyncResult,对象标记)+40
System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult)+40
System.Web.Mvc.MvcHandler.System.Web.IHTTPassynchandler.EndProcessRequest(IAsyncResult结果)+38
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()+96296
System.Web.HttpApplication.ExecuteStep(IExecutionStep步骤,布尔值&同步完成)+155
以下是Linq到SQL定义属性

    private System.Nullable<int> _UserID;

    private int _StaffLocalID;

    private string _Fac;

    private string _StaffFirstName;

    private string _StaffLastName;

    private string _StaffEmail;

    private string _AcademyID;

    private int _StudentID;

    private string _StudentLastName;

    private string _StudentFirstName;

    private System.Nullable<short> _Grade;

    private string _ParentID;

    private string _parentemail;

    private System.Nullable<int> _ParentUserID;

    private string _ParentLastName;

    private string _ParentFirstName;

    private string _Relationship;
private System.Nullable\u UserID;
私人国际公寓;
私有字符串_Fac;
私有字符串_StaffFirstName;
私有字符串_StaffLastName;
私人字符串_;
私有字符串\u AcademyID;
私立国际学生ID;
私有字符串\u StudentLastName;
私有字符串_StudentFirstName;
专用系统。可为空(U级);
私有字符串\u ParentID;
私人字符串\u parentemail;
private System.Nullable\u ParentUserID;
私有字符串\u ParentLastName;
私有字符串\u ParentFirstName;
私有字符串_关系;

我解决了!问题是我的dba更改了列的类型,没有通知我。哈哈

你能展示一下堆栈跟踪吗?到底是什么操作导致了异常?您的数据库中是否有映射到模型中的
string
字段的
int
字段?请发布
Read\u FacilitatorParentList
的定义(仅限属性)以及表的结构。我刚刚检查了所有映射,没有任何int被错误映射,反之亦然。我在哪里可以找到Read\u FacilitatorParentList的定义?它似乎不在自动生成的Linq to SQL代码中?在这种情况下,当您对您的问题发表评论时“我刚刚检查了所有映射,没有任何int被错误映射,反之亦然。”,您是如何检查的?如果您包括如何检查以及应该如何检查,这个答案可能对其他人也有用。我只是浏览了一下专栏。