Usuário com melhor resposta
@Html.partial - is a type which is not valid in the given context

Pergunta
-
No meu projeto eu tenho uma pagina que é que chamada pelo menu criando uma model , em qualquer lugar do projeto.
carreguei a mesma informando o seguinte comando: @Html.Partial("CaminhoDaPagina/Pagina.cshtml");
e na minha pagina (model ) no topo da página tem o seguinte comando:@model NomeProjeto.Web.Models.NomeDaModel
Realizo o Build no Projeto sem problemas. no entanto quando eu vou rodar o projeto apresente o seguinte erro abaixo
is a type which is not valid in the given context
ja tentei chamar a partial de varias maneiras:
@Html.RenderPartial("CaminhoDaPagina/Pagina.cshtml,NomeModel"), só que o erro nesse caso já aparece na desclaração do comando.Erro: is a type which is not valid in the given context
Alguem já teve algum problema parecido ?
Encontrei algumas soluções, só que nenhuma delas funcionou, no meu caso.
Estou analisando para identificar se é algum problema de procedimento
Obs.: Meu caso é +/- parecido com o que achei :
http://social.msdn.microsoft.com/Forums/pt-BR/mvcpt/thread/a1a61cd7-6d55-4624-ae5e-69bf3e6e95d7
att,
MARCIO HOLANDA
Respostas
-
vocÊ quer passar data numa partial view?
tipo...
@Html.Partial("_EditTwitter", new MyModels.Companies.CompanyTwitterInfo(), new ViewDataDictionary { {"CompanyId", Model.CompanyId} })
http://msdn.microsoft.com/en-us/library/ee402902(VS.108).aspx
estudando o problema eu vi isso aqui:
"Right, the main reason this doesn't work is that C# does not support calling an extension method (which is what
Html.RenderPartial()
is) when any of the arguments is of a dynamic type. You have to either call the extension method statically or cast the argument to a non-dynamic type"alguns exemplos...
@Html.TextBoxFor(model => model.TwitterHandle)
@Html.Partial("_EditTwitter", new MyModels.Companies.CompanyTwitterInfo { CompanyId = Model.CompanyId })
Bom, essa discussão toda está aqui: http://forums.asp.net/t/1684991.aspx/2/10
e aqui:
http://forums.asp.net/t/1736438.aspx/1http://stackoverflow.com/questions/13175765/html-partial-model-not-found
Mas respondendo diretamente sem fontes:
Você lembrou do controller?
Tem certeza que essa sua chamada está correta, porque me causa uma pequena estranheza
porque o caminho que conheço é assim:
@{ Html.RenderPartial("_Detalhar", Model.ClasseQueImplementaIEntidadeBase); }
Aprendendo Ad Eternum Se minha resposta foi útil por favor marque, se minha resposta respondeu completamente sua dúvida, marque-a como resposta, se houve outra resposta melhor, marque ela. Assim facilita a busca e melhora a organização do fórum e o nosso aprendizado.
- Editado Guilherme MA terça-feira, 15 de janeiro de 2013 19:01
- Sugerido como Resposta GracieBJJ terça-feira, 22 de janeiro de 2013 04:45
- Marcado como Resposta welington jrModerator terça-feira, 6 de março de 2018 15:11
Todas as Respostas
-
-
vocÊ quer passar data numa partial view?
tipo...
@Html.Partial("_EditTwitter", new MyModels.Companies.CompanyTwitterInfo(), new ViewDataDictionary { {"CompanyId", Model.CompanyId} })
http://msdn.microsoft.com/en-us/library/ee402902(VS.108).aspx
estudando o problema eu vi isso aqui:
"Right, the main reason this doesn't work is that C# does not support calling an extension method (which is what
Html.RenderPartial()
is) when any of the arguments is of a dynamic type. You have to either call the extension method statically or cast the argument to a non-dynamic type"alguns exemplos...
@Html.TextBoxFor(model => model.TwitterHandle)
@Html.Partial("_EditTwitter", new MyModels.Companies.CompanyTwitterInfo { CompanyId = Model.CompanyId })
Bom, essa discussão toda está aqui: http://forums.asp.net/t/1684991.aspx/2/10
e aqui:
http://forums.asp.net/t/1736438.aspx/1http://stackoverflow.com/questions/13175765/html-partial-model-not-found
Mas respondendo diretamente sem fontes:
Você lembrou do controller?
Tem certeza que essa sua chamada está correta, porque me causa uma pequena estranheza
porque o caminho que conheço é assim:
@{ Html.RenderPartial("_Detalhar", Model.ClasseQueImplementaIEntidadeBase); }
Aprendendo Ad Eternum Se minha resposta foi útil por favor marque, se minha resposta respondeu completamente sua dúvida, marque-a como resposta, se houve outra resposta melhor, marque ela. Assim facilita a busca e melhora a organização do fórum e o nosso aprendizado.
- Editado Guilherme MA terça-feira, 15 de janeiro de 2013 19:01
- Sugerido como Resposta GracieBJJ terça-feira, 22 de janeiro de 2013 04:45
- Marcado como Resposta welington jrModerator terça-feira, 6 de março de 2018 15:11