• 1402/06/16

عدم نمایش سطح دسترسی :

سلام چرا در حالی که من دقیقا از کد های اموزش استفاده کردم لیست دسترسی رو نمایش نمی دهد.

  • 1402/06/16
  • ساعت 10:13

سلام کد تون رو چک کنید 

کد های جلسه بعدی رو مجدد چک کنید

 از سرویس تون عکس بدید


  • 1402/06/16
  • ساعت 10:21

ممنون


  • 1402/06/16
  • ساعت 10:48

  • 1402/06/16
  • ساعت 10:52

کد رو درخواست نکردید 

انتیتی های موجود رو باید فرخوانی کنید در قسمت گت 

در قسمت های بعدی اموزش داده شده

 


  • 1402/06/16
  • ساعت 12:07

ببخشید مشکل اینه کلا برای ویو شما کدی ننوشتید من تا قسمت 36 نگاه کردم


  • 1402/06/16
  • ساعت 12:37

ادامه بدید نوشته شدهه


  • 1402/06/16
  • ساعت 15:10

من قسمت اخر رو هم دیدم نوشته نشده متاسفانه وقتی وارد قسمت مدیریت نقش ها میشی و افزودن رو میزنیم قسمت سطح دسترستی چیزی نمایش داده نمیشه بخاطر این است کد در سمت ویو ندارد.

من فایل های قسمت 80 هم نگاه کردم فراموش کردید کد بزنید


  • 1402/06/16
  • ساعت 18:34

پس ب عنوان تمرین گفتم خودتون انجام بدید

الان قسمت هارو دیدم چون در قسمت ویرایش انجام دادم این موضوع رو 

گفتم ب عنوان تمرین قسمت افزودن رو خودتون انجام بدید چون کد هاش تقریبا مثل هم هست 


  • 1402/06/16
  • ساعت 18:58

خب من از قسمت ویرایش کپی کردم چرا این خطا رو میده


  • 1402/06/16
  • ساعت 19:45

لطفا یزره دقت کنید 

همینجوری کد هارو کپی پیست نکنید 

شما صرفا دوره ای رو میگیرید که یاد بگیرید چجوری پیاده سازی کنید ن این که کپی پیست از پروژه های دیگه ب پروژه دیگه 

امیدوارم من اشتباه کنم و قطعا همینطوره من اشتباه میگم 

در خصوص کد بالا ما نیازه ب اون خط کد نداریم اون خط کد فقط برای اینکه که داده ای که از قبل تو بانک بود inpute چک باکسش 

اتربیوت چکد بگیره یعنی انتخاب شده ما که موقع ساخت نیازی به اون نداریم پس حذفش کنید


  • 1402/06/17
  • ساعت 19:40

ببخشید استاد خب حذف کنیم خطوط پایین هم بخشی باید حذف بشه و در نهایت برای ثبت باید چک باکس باشه که انتخاب کنیم. و دکمه ثبت اطلاعاتی رو ثبت نمیکنه


  • 1402/06/17
  • ساعت 19:46
@model CreateOrEditRoleViewModel
@{
    ViewData["Title"] = "افزودن نقش";
    var permissions = (List<Permission>)ViewData["Permissions"];
}

<div class="row mt-4">
    <div class="col-md-8">
        <div class="card shadow-sm">
            <div class="card-body">
                <p class="card-text">ثبت اطلاعات</p>
                <form asp-area="Admin" asp-controller="User" asp-action="CreateRole" method="post">
                    <div class="form-group">
                        <label class="form-lable">نام نقش</label>
                        <input class="form-control" asp-for="RoleTitle">
                        <span asp-validation-for="RoleTitle" class="text-danger"></span>
                    </div>

                    <div class="mt-5">
                        <button type="submit" class="btn btn-success btn-block ">ثبت اطلاعات</button>
                    </div>
                </form>

            </div>
        </div>
    </div>
    <div class="col-md-4">
        <div class="card shadow-sm">
            <div class="card-body">
                <p class="card-text">سطح دسترسی ها</p>

                <p class="card-text">سطح دسترسی ها</p>
                @if (permissions != null && permissions.Any())
                {
                    @foreach (var permission in permissions.Where(c => c.ParentId == null))
                    {
                        <div class="checkbox">
                            <label>
                                <input type="checkbox"  name="@nameof(Model.SelectedPermission)" value="@permission.Id" />
                                <span class="text">@permission.Title</span>
                            </label>
                        </div>

                        @foreach (var subPermission in permissions.Where(c => c.ParentId == permission.Id))
                        {
                            <div class="checkbox" style="margin-right: 17px;">
                                <label>
                                    <input type="checkbox" name="@nameof(Model.SelectedPermission)" value="@subPermission.Id" />
                                    <span class="text">@subPermission.Title</span>
                                </label>
                            </div>
                        }
                    }
                }

            </div>
            </div>
        </div>
    </div>
</div>

@section scripts{
    <partial name="_ValidationScripts" />
}

----------------------------------------------------------------
CONTOROLLER
controller
--------------------------------

        #region create Role
        [HttpGet]
        public async Task<IActionResult> CreateRole()
        {
            ViewData["Permissions"] = await _userService.GetAllActivePermission();

            return View();
        }

        [HttpPost,ValidateAntiForgeryToken]
        public async Task<IActionResult> CreateRole(CreateOrEditRoleViewModel create)
        {
            ViewData["Permissions"] = await _userService.GetAllActivePermission();

            if (ModelState.IsValid)
            {
                var result = await _userService.CreateOrEditRole(create);

                switch (result)
                {
                    case CreateOrEditRoleResult.NotFound:
                        break;
                    case CreateOrEditRoleResult.NotExistPermissions:
                        TempData[WarningMessage] = "لطفا نقشی را انتخاب کنید";
                        break;
                    case CreateOrEditRoleResult.Success:
                        TempData[SuccessMessage] = "عملیات افزودن نقش با موفقیت انجام شد";
                        return RedirectToAction("FilterRoles");
                }
            }

            return View(create);
        }
        #endregion

  • 1402/06/17
  • ساعت 19:46

موفق باشید


  • 1402/06/17
  • ساعت 21:07

خیلی ممنونم استاد. خطا را در هنگام ثبت داد اگه براتون مقدور بود بررسی کنید.


  • 1402/06/17
  • ساعت 21:10

پروژه من درسته کد هارو بررسی کنید


  • 1402/06/18
  • ساعت 17:35

سلام  اینم هنگام ثبت 


  • 1402/06/18
  • ساعت 18:43
        public async Task<CreateOrEditRoleResult> CreateOrEditRole(CreateOrEditRoleViewModel createOrEditRole)
        {
            if (createOrEditRole.Id != 0)
            {
                var role = await _userRepository.GetRoleById(createOrEditRole.Id);

                if (role == null)
                    return CreateOrEditRoleResult.NotFound;

                role.RoleTitle = createOrEditRole.RoleTitle;

                _userRepository.UpdateRole(role);

                await _userRepository.RemoveAllPermissionSelectedRole(createOrEditRole.Id);

                if (createOrEditRole.SelectedPermission == null)
                {
                    return CreateOrEditRoleResult.NotExistPermissions;
                }
                await _userRepository.AddPermissionToRole(createOrEditRole.SelectedPermission, createOrEditRole.Id);
                await _userRepository.SaveChange();

                return CreateOrEditRoleResult.Success;
            }
            else
            {
                //create

                var newRole = new Role
                {
                    RoleTitle = createOrEditRole.RoleTitle,
                    CreateDate=DateTime.Now
                };

                await _userRepository.CreateRole(newRole);
                await _userRepository.SaveChange();


                if (createOrEditRole.SelectedPermission == null)
                {
                    return CreateOrEditRoleResult.NotExistPermissions;
                }

                await _userRepository.AddPermissionToRole(createOrEditRole.SelectedPermission, newRole.Id);

                await _userRepository.SaveChange();


                return CreateOrEditRoleResult.Success;
            }
        }
@model CreateOrEditRoleViewModel
@{
    ViewData["Title"] = "افزودن نقش";
    var permissions = (List<Permission>)ViewData["Permissions"];
}

<form asp-area="Admin" asp-controller="User" asp-action="CreateRole" method="post">
    <div class="row mt-4">
        <div class="col-md-8">
            <div class="card shadow-sm">
                <div class="card-body">
                    <p class="card-text">ثبت اطلاعات</p>
                    <div class="form-group">
                        <label class="form-lable">نام نقش</label>
                        <input class="form-control" asp-for="RoleTitle">
                        <span asp-validation-for="RoleTitle" class="text-danger"></span>
                    </div>

                    <div class="mt-5">
                        <button type="submit" class="btn btn-success btn-block ">ثبت اطلاعات</button>
                    </div>

                </div>
            </div>
        </div>
        <div class="col-md-4">
            <div class="card shadow-sm">
                <div class="card-body">

                    <p class="card-text">سطح دسترسی ها</p>
                    @if (permissions != null && permissions.Any())
                    {
                        @foreach (var permission in permissions.Where(c => c.ParentId == null))
                        {
                            <div class="checkbox">
                                <label>
                                    <input type="checkbox" name="@nameof(Model.SelectedPermission)" value="@permission.Id" />
                                    <span class="text">@permission.Title</span>
                                </label>
                            </div>

                            @foreach (var subPermission in permissions.Where(c => c.ParentId == permission.Id))
                            {
                                <div class="checkbox" style="margin-right: 17px;">
                                    <label>
                                        <input type="checkbox" name="@nameof(Model.SelectedPermission)" value="@subPermission.Id" />
                                        <span class="text">@subPermission.Title</span>
                                    </label>
                                </div>
                            }
                        }
                    }


                </div>
            </div>
        </div>
    </div>
</form>

@section scripts{
    <partial name="_ValidationScripts" />
}

تو سرویس بزارید 

پروژه من مشکلی نیست باز شما تست کنید


  • 1402/06/18
  • ساعت 19:25

خیلی ممنون مشکل حل شد


logo-enamadlogo-samandehi