No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Curso de ASP.NET Core

Curso de ASP.NET Core

Juan Carlos Ruiz

Juan Carlos Ruiz

Actualizando la versi贸n de bootstrap

16/35
Recursos

Aportes 18

Preguntas 1

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Seguro que no soy en 煤nico que pide m谩s cursos de C#

En lugar de setearle el UniqueIda cada rato, mi soluci贸n fue setear uno por defecto en el constructor de ObjetoEscuela, quedando as铆:

Dentro del archivo 鈥淥bjetoEscuelaBase.cs鈥

public ObjetoEscuelaBase() {
    UniqueId = Guid.NewGuid().ToString();
}

A mi ya me salia el Guid, no he tenido que utillizarlo. lo pusimos en clases anteriores en el constructor de ObjetoEscuelaBase

public ObjetoEscuelaBase() => UniqueId = Guid.NewGuid().ToString();

Cambiando el tipo a un IEnumerable es posible pasar el casteo y evitar el error.

si reemplaza la lista por IEnumerable Funciona correctamente

Buena la solucion de los otros compa帽eros de usar

 @model IEnumerable<BaseSchoolObject>

En la versi贸n 2.2 de .NET Core no es necesario actualizar bootstrap.

Profe Juan Carlos Ruiz si el titulo de la clase se llama [Actualizando la versi贸n de bootstrap] en el video solo tomas 1 minuto en exportar las librer铆as de bootstrap, pero nunca comentas de donde se puede obtener, espero que los pr贸ximos cursos no copie el c贸digo de otros proyectos , se pierde bastante el hilo del seguimiento, estar铆a mejor si el curso se alargue pero programando desde cero

S贸lo quiero reportar que, al 2022 y uando <TargetFramework>net6.0</TargetFramework>
No fu茅 necesario comentar el @Model de ListaObjetoEscuela.cshtml ya que me permiti贸 correr tanto Multialumno como Multiasignatura con el siguiente contenido.

@Model List<ObjetoEscuelaBase>

<table class="table table-dark table-hover">
    <thead>
        <tr>
            <th scope="col">Id</th>
            <th scope="col">Nombre</th>
        </tr>
    </thead>
    <tbody>
        @foreach (var obj in @Model)
        {
        <tr>
            <td>@obj.Nombre</td>
            <td>@obj.UniqueId</td>
        </tr>
        }
    </tbody>
</table>

隆隆隆Que paso, que paso, Vamos ahi!!!

馃槑

Interesante

Utilice @model IEnumerable<ObjetoEscuelaBase> para corregir el error de la vista ListaObjetosEscuela.

A mi me funciono la vista parcial no fue necesario quitar la definicion del modelo
La vista parcial

@model IEnumerable<SchoolBase>
<table class="table table-dark table-hover">
    <thead>
        <tr>
            <th>Id</th>
            <th>Name</th>
        </tr>
    </thead>
    <tbody>
        @foreach (var item in Model)
        {
            <tr>
                <td>@item.Id</td>
                <td>@item.Name</td>
            </tr>
        }
    </tbody>
</table>

Las vistas normales

@model IEnumerable<Subject>
@{
    ViewData["Title"] = "Subjects";
}
<h1>@ViewData["Title"]</h1>
<partial name="MultipleSchoolBase" />
<p><i>@ViewBag.Date</i></p>
@model IEnumerable<Student>
@{
    ViewData["Title"] = "Students";
}
<h1>@ViewData["Title"]</h1>
<partial name="MultipleSchoolBase" />
<p><i>@ViewBag.Date</i></p>

Creo que a la vista parcial no es necesario enviarle el modelo pues seria algo redundante teniendo en cuenta que el padre es la vista multialunno que es el que contiene el modelo por lo tanto no es necesario enviarlo

Tambi茅n se puede solucionar el problema del tipo con una lista gener铆ca, con IEnumerable.

As铆 quedar铆a nuestro objeto ListaObjetosEscuela, y funciona sin ning煤n problema:

@model IEnumerable<ObjetoEscuelaBase>

<table class="table table-dark table-hover table-sm">
    <thead>
        <tr>
            <th>Nombre</th>
            <th>Id</th>
        </tr>
    </thead>
    <tbody>
        @foreach (var obj in Model)
        {     
            <tr>
                <td>@obj.Nombre</td>
                <td>@obj.UniqueId</td>
            </tr>
        }
    </tbody>
</table>
Muy buena clase.

como que me confundio un poco la vista parcial con objetos que heredan pero al final se entendio la idea.