none
Error RRS feed

  • Pregunta

  • An exception of type 'System.InvalidOperationException' occurred in System.Web.Mvc.dll but was not handled in user code

    Additional information: There is no ViewData item of type 'IEnumerable<SelectListItem>' that has the key 'RoleName'

    codigo del donde pasa el error :

         Role Name: @Html.DropDownList("RoleName", ViewBag.Roles as SelectList)

    aun no he podido solucionar este error ayuda

    http://www.dotnetfunda.com/articles/show/2648/working-with-roles-in-aspnet-mvc-4 este el tutorial de guia . ayuda


    • Editado raulops martes, 16 de diciembre de 2014 15:21
    martes, 16 de diciembre de 2014 14:50

Todas las respuestas

  • hola

    como asignas el RoleName en el ViewBag ? podrias poner el codigo del Action que invoca esa view que falla

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 16 de diciembre de 2014 15:36
  • lo que esta pasando que los roles pasa por los controladores pero lo que pasa no esta pasando en la base de datos y ese conflicto que me puede estar mando como podria solucionar si es eso?

    base de datos sql 2008

    visual studio 2013

    mvc 4

    codigo del error 

    Role Name: @Html.DropDownList("RoleName", ViewBag.Roles as SelectList)

    codigo de la vista completa

    @{

        ViewBag.Title = "RoleAddToUser ";

    }

    <div class="spacerBody">

        <p>&nbsp;</p>

        @Html.ActionLink("Create New Role", "RoleCreate") | @Html.ActionLink("Roles", "RoleIndex")

        <h2>Role Add to User</h2>

        @using (Html.BeginForm("RoleAddToUser", "Account"))

        {

            @Html.AntiForgeryToken()

            @Html.ValidationSummary(true)

            <div class="message-success">@ViewBag.ResultMessage</div>

            <p>

                Username : @Html.TextBox("UserName")

                Role Name: @Html.DropDownList("RoleName", ViewBag.Roles as SelectList)

            </p>

            <input type="submit" value="Save" />

        }

        <div class="hr"></div>

        @using (Html.BeginForm("GetRoles", "Account"))

        {

            @Html.AntiForgeryToken()

            <p>

                Username : @Html.TextBox("UserName")

                <input type="submit" value="Get Roles for this User" />

            </p>

        }

        @if (ViewBag.RolesForThisUser != null)

        {

            <text>

                <h3>Roles for this user </h3>

                <ol>

                    @foreach (string s in ViewBag.RolesForThisUser)

                    {

                        <li>@s</li>

                    }

                </ol>

            </text>

        }

    </div>

    martes, 16 de diciembre de 2014 19:25
  • >>lo que esta pasando que los roles pasa por los controladores pero lo que pasa no esta pasando en la base de datos y ese conflicto que me puede estar mando como podria solucionar si es eso?

    no entendi

    podrias poner el codigo de controller, en realidad del action que usa esa view ?

    si la ejecucion no pasa por la db para tomar los datos entonces como asignas el ViewBag ?

    en que linea de codigo asignas los datos en el ViewBag.Roles ?

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina


    martes, 16 de diciembre de 2014 21:39