none
ERRO COM JSON NO ASP.NET MVC 5 VISUAL STUDIO 2015 RRS feed

Respostas

  • Negativo, Ricardo. Não tem o public na frente da declaração da classe. O default (sem especificar o modificador) é private.

    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer".

    Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".

    sexta-feira, 10 de março de 2017 01:13

Todas as Respostas

  • Olá PauloRMedeiros

    No print você cortou parte do método não dá para entender como esta o Return!


    Se ajudei Vote como Útil, se resolvi seu problema clique em Marcar como Resposta.


    Daniel Ribeiro Arrais
    Consultor Sênior
    Site: www.danielarrais.com.br
    Linkedin: http://www.linkedin.com/in/danielarrais
    E-mail: arraishapkido@gmail.com
    Skype: dani.arrais

    quarta-feira, 8 de março de 2017 20:13
  • Daniel

    Segue o codigo fonte:

     public JsonResult Listar(ParametrosPaginacao paginacao)
            {
                var livros = db.Livros.AsQueryable();
    
                int totalLivros = livros.Count();
    
                if (!String.IsNullOrWhiteSpace(paginacao.SearchPhrase))
                {
                    // tentar converter em número para pesquisa
                    int ano = 0;
                    int.TryParse(paginacao.SearchPhrase, out ano);
    
                    // tentar converter em décima para pesquisa
                    decimal valor = 0.0m;
                    decimal.TryParse(paginacao.SearchPhrase, out valor);
    
                    // utiliza Dynamic LINQ para fazer o filtro
                    livros = livros.Where("Titulo.Contains(@0) OR Autor.Contains(@0) OR AnoEdicao == @1 OR Valor == @2", paginacao.SearchPhrase, ano, valor);
                }
    
                // utiliza Dynamic LINQ para fazer o ordenamento por um campo
                var livrosFiltrados = livros.OrderBy(paginacao.CampoOrdenado).Skip((paginacao.Current - 1) * paginacao.RowCount).Take(paginacao.RowCount).ToList();
    
                int totalFiltrado = livrosFiltrados.Count();
    
                return Json(new DadosFiltrados() {
                            current = paginacao.Current,
                            rowCount = paginacao.RowCount,
                            rows = livrosFiltrados,
                            total = totalLivros
                }, JsonRequestBehavior.AllowGet);
            }

    E o erro:

    Severity Code Description Project File Line Suppression State
    Error CS0051 Inconsistent accessibility: parameter type 'ParametrosPaginacao' is less accessible than method 'LivrosController.Listar(ParametrosPaginacao)' DemoCRUD C:\PAULO\DemoCRUD-master\DemoCRUD\Controllers\LivrosController.cs 51 Active

    quarta-feira, 8 de março de 2017 20:17
  • Olá PauloRMedeiros

    Para fazer um teste altere o código abaixo!

    //Preenche o seu objeto DadosFiltrados antes passa ele aqui já pronto!

    return Json(dadosFiltro, JsonRequestBehavior.AllowGet);


    Se ajudei Vote como Útil, se resolvi seu problema clique em Marcar como Resposta.


    Daniel Ribeiro Arrais
    Consultor Sênior
    Site: www.danielarrais.com.br
    Linkedin: http://www.linkedin.com/in/danielarrais
    E-mail: arraishapkido@gmail.com
    Skype: dani.arrais

    quinta-feira, 9 de março de 2017 10:39
  • Paulo, verifique o código da sua classe ParametrosPaginacao, provavelmente você a declarou como private.

    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer".

    Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".

    quinta-feira, 9 de março de 2017 11:44
  • Boa Tarde Daniel 

    Aonde eu coloco seu código ?

    /Preenche o seu objeto DadosFiltrados antes passa ele aqui já pronto!

    return Json(dadosFiltro, JsonRequestBehavior.AllowGet);

    No meu código não tem dadosfiltro.

    Não entendi.

    Aguardo seu retorno.

    Obrigado.

    quinta-feira, 9 de março de 2017 20:28
  • Boa Tarde Juliano

    A minha classe já esta como publica.

     class ParametrosPaginacao
        {
            public int Current { get; internal set; }
            public int RowCount { get; internal set; }
            public string SearchPhrase { get; internal set; }
    
            internal object CampoOrdenado(Livro arg)
            {
                throw new NotImplementedException();
            }
        }

    Aguardo seu retorno.

    Obrigado

    quinta-feira, 9 de março de 2017 20:29
  • public class ParametrosPaginacao
        {
            public int Current { get; internal set; }
            public int RowCount { get; internal set; }
            public string SearchPhrase { get; internal set; }
    
            internal object CampoOrdenado(Livro arg)
            {
                throw new NotImplementedException();
            }
        }

    Thiago Custodio | Software Engineer
    Blog
    Twitter
    Meu livro de Azure

    quinta-feira, 9 de março de 2017 23:00
  • Negativo, Ricardo. Não tem o public na frente da declaração da classe. O default (sem especificar o modificador) é private.

    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer".

    Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".

    sexta-feira, 10 de março de 2017 01:13