c# - Invalid column when i am not asking for the one -


my code is:

cliente.country = new list<dic_paises>();  dic_paises c = ((from data in db.dic_paises data.id == 61  select data).singleordefault());  cliente.country.add(new dic_paises() { id = c.id, nome = c.nome }); return view(); 

what want is, have table client, , table countries, want show clients in view instead of showing id of country stored in client want show country name, hard me done in mvc, because new mvc. tried view model did not expected.

public partial class cliente {     public int id { get; set; }      [stringlength(1024)]     public string nome { get; set; }      [stringlength(1024)]     public string apelido { get; set; }      [stringlength(1024)]     public string email { get; set; }      public list<dic_paises> country { get; set; } } 

that's client model , here countries model:

public partial class dic_paises {     public int id { get; set; }      [required]     [stringlength(1024)]     public string nome { get; set; } } 

this doing in controller, saw video on youtube ...

cliente cliente = db.clientes.find(id);  if (cliente == null) {     return httpnotfound(); }  cliente.country = new list<dic_paises>();  dic_paises c = ((from data in db.dic_paises data.id == 61  select data).singleordefault());  cliente.country.add(new dic_paises() { id = c.id, nome = c.nome }); return view(); 

please can ...

here error ...

[sqlexception (0x80131904): invalid column name 'cliente_id'.]
system.data.sqlclient.sqlconnection.onerror(sqlexception exception, boolean breakconnection, action1 wrapcloseinaction) +2418094
system.data.sqlclient.sqlinternalconnection.onerror(sqlexception exception, boolean breakconnection, action
1 wrapcloseinaction) +5694468
system.data.sqlclient.tdsparser.throwexceptionandwarning(tdsparserstateobject stateobj, boolean callerhasconnectionlock, boolean asyncclose) +285
system.data.sqlclient.tdsparser.tryrun(runbehavior runbehavior, sqlcommand cmdhandler, sqldatareader datastream, bulkcopysimpleresultset bulkcopyhandler, tdsparserstateobject stateobj, boolean& dataready) +3731
system.data.sqlclient.sqldatareader.tryconsumemetadata() +58
system.data.sqlclient.sqldatareader.get_metadata() +89
system.data.sqlclient.sqlcommand.finishexecutereader(sqldatareader ds, runbehavior runbehavior, string resetoptionsstring) +379
system.data.sqlclient.sqlcommand.runexecutereadertds(commandbehavior cmdbehavior, runbehavior runbehavior, boolean returnstream, boolean async, int32 timeout, task& task, boolean asyncwrite, sqldatareader ds, boolean describeparameterencryptionrequest) +2064
system.data.sqlclient.sqlcommand.runexecutereader(commandbehavior cmdbehavior, runbehavior runbehavior, boolean returnstream, string method, taskcompletionsource1 completion, int32 timeout, task& task, boolean asyncwrite) +375
system.data.sqlclient.sqlcommand.runexecutereader(commandbehavior cmdbehavior, runbehavior runbehavior, boolean returnstream, string method) +53
system.data.sqlclient.sqlcommand.executereader(commandbehavior behavior, string method) +240
system.data.sqlclient.sqlcommand.executedbdatareader(commandbehavior behavior) +41
system.data.common.dbcommand.executereader(commandbehavior behavior) +12
system.data.entity.infrastructure.interception.dbcommanddispatcher.<reader>b__c(dbcommand t, dbcommandinterceptioncontext
1 c) +14
system.data.entity.infrastructure.interception.internaldispatcher1.dispatch(ttarget target, func3 operation, tinterceptioncontext interceptioncontext, action3 executing, action3 executed) +72
system.data.entity.infrastructure.interception.dbcommanddispatcher.reader(dbcommand command, dbcommandinterceptioncontext interceptioncontext) +402
system.data.entity.internal.interceptabledbcommand.executedbdatareader(commandbehavior behavior) +166
system.data.common.dbcommand.executereader(commandbehavior behavior) +12
system.data.entity.core.entityclient.internal.entitycommanddefinition.executestorecommands(entitycommand entitycommand, commandbehavior behavior) +36

[entitycommandexecutionexception: error occurred while executing command definition. see inner exception details.]

system.data.entity.core.entityclient.internal.entitycommanddefinition.executestorecommands(entitycommand entitycommand, commandbehavior behavior) +103
system.data.entity.core.objects.internal.objectqueryexecutionplan.execute(objectcontext context, objectparametercollection parametervalues) +758
system.data.entity.core.objects.<>c__displayclass7.b__6() +90
system.data.entity.core.objects.objectcontext.executeintransaction(func1 func, idbexecutionstrategy executionstrategy, boolean startlocaltransaction, boolean releaseconnectiononsuccess) +288
system.data.entity.core.objects.<>c__displayclass7.<getresults>b__5() +154
system.data.entity.sqlserver.defaultsqlexecutionstrategy.execute(func
1 operation) +190
system.data.entity.core.objects.objectquery1.getresults(nullable1 formergeoption) +283 system.data.entity.core.objects.objectquery1.<system.collections.generic.ienumerable<t>.getenumerator>b__0() +15 system.data.entity.internal.lazyenumerator1.movenext() +45 system.linq.enumerable.singleordefault(ienumerable1 source) +121 system.data.entity.core.objects.elinq.objectqueryprovider.<getelementfunction>b__2(ienumerable1 sequence) +40 system.data.entity.core.objects.elinq.objectqueryprovider.executesingle(ienumerable1 query, expression queryroot) +59 system.data.entity.core.objects.elinq.objectqueryprovider.system.linq.iqueryprovider.execute(expression expression) +114 system.data.entity.internal.linq.dbqueryprovider.execute(expression expression) +116 system.linq.queryable.singleordefault(iqueryable1 source) +211 webapplication2.controllers.clientescontroller.details(nullable1 id) in c:\users\dani1\documents\visual studio 2015\projects\webapplication2\webapplication2\controllers\clientescontroller.cs:56 lambda_method(closure , controllerbase , object[] ) +107 system.web.mvc.actionmethoddispatcher.execute(controllerbase controller, object[] parameters) +14 system.web.mvc.reflectedactiondescriptor.execute(controllercontext controllercontext, idictionary2 parameters) +157 system.web.mvc.controlleractioninvoker.invokeactionmethod(controllercontext controllercontext, actiondescriptor actiondescriptor, idictionary2 parameters) +27 system.web.mvc.async.asynccontrolleractioninvoker.<begininvokesynchronousactionmethod>b__39(iasyncresult asyncresult, actioninvocation innerinvokestate) +22 system.web.mvc.async.wrappedasyncresult2.callenddelegate(iasyncresult asyncresult) +29 system.web.mvc.async.wrappedasyncresultbase1.end() +49 system.web.mvc.async.asynccontrolleractioninvoker.endinvokeactionmethod(iasyncresult asyncresult) +32 system.web.mvc.async.asyncinvocationwithfilters.<invokeactionmethodfilterasynchronouslyrecursive>b__3d() +50 system.web.mvc.async.<>c__displayclass46.<invokeactionmethodfilterasynchronouslyrecursive>b__3f() +225 system.web.mvc.async.<>c__displayclass33.<begininvokeactionmethodwithfilters>b__32(iasyncresult asyncresult) +10 system.web.mvc.async.wrappedasyncresult1.callenddelegate(iasyncresult asyncresult) +10 system.web.mvc.async.wrappedasyncresultbase1.end() +49 system.web.mvc.async.asynccontrolleractioninvoker.endinvokeactionmethodwithfilters(iasyncresult asyncresult) +34 system.web.mvc.async.<>c__displayclass2b.<begininvokeaction>b__1c() +26 system.web.mvc.async.<>c__displayclass21.<begininvokeaction>b__1e(iasyncresult asyncresult) +100 system.web.mvc.async.wrappedasyncresult1.callenddelegate(iasyncresult asyncresult) +10 system.web.mvc.async.wrappedasyncresultbase1.end() +49 system.web.mvc.async.asynccontrolleractioninvoker.endinvokeaction(iasyncresult asyncresult) +27 system.web.mvc.controller.<beginexecutecore>b__1d(iasyncresult asyncresult, executecorestate innerstate) +13 system.web.mvc.async.wrappedasyncvoid1.callenddelegate(iasyncresult asyncresult) +29 system.web.mvc.async.wrappedasyncresultbase1.end() +49 system.web.mvc.controller.endexecutecore(iasyncresult asyncresult) +36 system.web.mvc.controller.<beginexecute>b__15(iasyncresult asyncresult, controller controller) +12 system.web.mvc.async.wrappedasyncvoid1.callenddelegate(iasyncresult asyncresult) +22 system.web.mvc.async.wrappedasyncresultbase1.end() +49 system.web.mvc.controller.endexecute(iasyncresult asyncresult) +26 system.web.mvc.controller.system.web.mvc.async.iasynccontroller.endexecute(iasyncresult asyncresult) +10 system.web.mvc.mvchandler.<beginprocessrequest>b__5(iasyncresult asyncresult, processrequeststate innerstate) +21 system.web.mvc.async.wrappedasyncvoid1.callenddelegate(iasyncresult asyncresult) +29 system.web.mvc.async.wrappedasyncresultbase`1.end() +49 system.web.mvc.mvchandler.endprocessrequest(iasyncresult asyncresult) +28 system.web.mvc.mvchandler.system.web.ihttpasynchandler.endprocessrequest(iasyncresult result) +9 system.web.callhandlerexecutionstep.system.web.httpapplication.iexecutionstep.execute() +9723757 system.web.httpapplication.executestep(iexecutionstep step, boolean& completedsynchronously) +155

the situation resolved ...

i guess call view model

public class clientecountry     {         public cliente cli { get; set; }          public dic_paises country { get; set; }     } 

the controller code ...

cliente ccc = (from data in db.clientes data.id == id select data).firstordefault();                 dic_paises ppp = (from data in db.dic_paises data.id == ccc.pais select data).firstordefault();                 clientecountry cc = new clientecountry();                 cc.cli = ccc;                 cc.country = ppp;                 viewbag.id = id;                 return view(cc); 

where id parameter passed through view...

in view put ...

@model  webapplication2.models.clientecountry 

and able use properties ...

@html.displaynamefor(model => model.cli.nome) @html.displayfor(model => model.cli.nome)  @html.displaynamefor(model => model.cli.apelido) @html.displayfor(model => model.cli.apelido)  @html.displayname("country") @html.displayfor(model => model.country.nome) 

anyway of guys, ...


Comments