请求的URL返回500 -内部服务器错误

本文关键字:内部 服务器 错误 URL 返回 请求 | 更新日期: 2023-09-27 17:51:15

我在使用kendo-grid的asp.net mvc剃刀项目中遇到问题。数据模型如下:

public partial class Usuario
{
    private string _id;
    public virtual string Id
    {
        get
        {
            return this._id;
        }
        set
        {
            this._id = value;
        }
    }
    private string _idPerfil;
    public virtual string IdPerfil
    {
        get
        {
            return this._idPerfil;
        }
        set
        {
            this._idPerfil = value;
        }
    }
    private string _idEntidad;
    public virtual string IdEntidad
    {
        get
        {
            return this._idEntidad;
        }
        set
        {
            this._idEntidad = value;
        }
    }
    private int? _idDepArea;
    public virtual int? IdDepArea
    {
        get
        {
            return this._idDepArea;
        }
        set
        {
            this._idDepArea = value;
        }
    }
    private Char _forzarCambioClave;
    public virtual Char ForzarCambioClave
    {
        get
        {
            return this._forzarCambioClave;
        }
        set
        {
            this._forzarCambioClave = value;
        }
    }
    private short? _idDirectivaSeguridad;
    public virtual short? IdDirectivaSeguridad
    {
        get
        {
            return this._idDirectivaSeguridad;
        }
        set
        {
            this._idDirectivaSeguridad = value;
        }
    }
    private string _hash;
    public virtual string Hash
    {
        get
        {
            return this._hash;
        }
        set
        {
            this._hash = value;
        }
    }
    private Char _requiereRol;
    public virtual Char RequiereRol
    {
        get
        {
            return this._requiereRol;
        }
        set
        {
            this._requiereRol = value;
        }
    }
    private string _idEstado;
    public virtual string IdEstado
    {
        get
        {
            return this._idEstado;
        }
        set
        {
            this._idEstado = value;
        }
    }
    private long _idPersona;
    public virtual long IdPersona
    {
        get
        {
            return this._idPersona;
        }
        set
        {
            this._idPersona = value;
        }
    }
    private Estado _estado;
    public virtual Estado Estado
    {
        get
        {
            return this._estado;
        }
        set
        {
            this._estado = value;
        }
    }
    private DirectivaSeguridad _directivaSeguridad;
    public virtual DirectivaSeguridad DirectivaSeguridad
    {
        get
        {
            return this._directivaSeguridad;
        }
        set
        {
            this._directivaSeguridad = value;
        }
    }
    private Entidad _entidade;
    public virtual Entidad Entidad
    {
        get
        {
            return this._entidade;
        }
        set
        {
            this._entidade = value;
        }
    }
    private Persona _persona;
    public virtual Persona Persona
    {
        get
        {
            return this._persona;
        }
        set
        {
            this._persona = value;
        }
    }
    private IList<Rol> _roles = new List<Rol>();
    public virtual IList<Rol> Roles
    {
        get
        {
            return this._roles;
        }
    }
    private IList<LogMasterAuditoria> _logsMasterAuditoria = new List<LogMasterAuditoria>();
    public virtual IList<LogMasterAuditoria> LogsMasterAuditoria
    {
        get
        {
            return this._logsMasterAuditoria;
        }
    }
}

控制器管理模型为:

public class UsuariosController : BaseController
{
    private Usuario usuario = new Usuario();
    public ActionResult Cargar([DataSourceRequest]DataSourceRequest request)
    {
        return Json(backend.Usuarios.ToDataSourceResult(request));
    }

…}

的观点是:

<div>
    @(Html.Kendo().Grid<NetInfinity.BackendCore.Usuario>()
        .Name("grid")
        .Columns(columns =>
        {
            columns.Bound(c => c.Id).Filterable(false).Width(100).Title(@Usuarios.Id);
            columns.Bound(c => c.Persona.Nombres).Width(80).Title(@Usuarios.Nombre);
            columns.Bound(c => c.Estado.Descripcion).Width(60).Title(@Usuarios.NombrePerfil);
            columns.Bound(c => c.Persona.TipoIdentidad.FormatoPresentacion).Width(20).Title(@Usuarios.IdTipo);
            columns.Bound(c => c.Persona.NumeroIdentificacion).Width(30).Title(@Usuarios.IdNumero);
            columns.Command(c => c.Custom("Edit").Text("Editar"));
            columns.Command(c => c.Custom("Remove").Text("Eliminar"));
        })
        .ToolBar(t => { t.Excel(); })
        .Navigatable()
        .Pageable()
        .Sortable()
        .Scrollable()
        .Filterable()
        .Editable(e => e.Mode(GridEditMode.PopUp))
        .Resizable(resize => resize.Columns(true))
        .HtmlAttributes(new { style = "height:430px;" })
        .DataSource(dataSource => dataSource
            .Ajax()
            .ServerOperation(false)
            .Model(model => model.Id(c => c.Id))
            .Read(read => read.Action("Cargar", "Usuarios"))
         )
    )
</div>

问题似乎引发了Json序列化从控制器执行,因为没有数据显示到网格和表有行。也许有一个问题序列化对象从模型,如虚拟属性,例如:虚拟人物角色对象和其他。

请求的URL返回500 -内部服务器错误

您是否尝试调试它并获得异常消息+堆栈跟踪以检测错误?调试器是避免"可能"的好工具。此外,ASP。如果在Web.config中打开了这样的配置,. NET肯定会返回错误描述。

请通过调试找到错误,并在这里发布异常详细信息。

或者更改您的Web.config,使您具有以下值:

<configuration>
    <system.web>
        <customErrors mode="Off" />
    </system.web>
</configuration>

刷新页面,你会得到你的错误描述。
发现错误并修复它,或者把它贴在这里,我们会帮助你。