AutoNav.Mvc
1.0.6
dotnet add package AutoNav.Mvc --version 1.0.6
NuGet\Install-Package AutoNav.Mvc -Version 1.0.6
<PackageReference Include="AutoNav.Mvc" Version="1.0.6" />
<PackageVersion Include="AutoNav.Mvc" Version="1.0.6" />
<PackageReference Include="AutoNav.Mvc" />
paket add AutoNav.Mvc --version 1.0.6
#r "nuget: AutoNav.Mvc, 1.0.6"
#:package AutoNav.Mvc@1.0.6
#addin nuget:?package=AutoNav.Mvc&version=1.0.6
#tool nuget:?package=AutoNav.Mvc&version=1.0.6
README.md (خطوات مختصرة جدًا)
AutoNav.Mvc
حزمة تولّد روابط النافبار تلقائيًا في مشاريع ASP.NET Core MVC من الأكشنات التي لها Views.
التثبيت (أقل تعديلات)
وضع A — صفر تعديل في الـ Layout
- ثبّت الحزمة:
dotnet add package AutoNav.Mvc
- أضف سطرًا واحدًا في
Program.cs:
builder.Services.AddAutoNav();
تأكد أنك تستخدم MVC التقليدي:
builder.Services.AddControllersWithViews();
app.MapDefaultControllerRoute();
الحزمة تحقن تلقائيًا CSS/JS وتملأ أول ul.navbar-nav.flex-grow-1. إن لم يوجد، ستنشئ قائمة داخل .navbar-collapse تلقائيًا.
وضع B — بدون أي كود في Program.cs
ثبّت الحزمة.
في Views/Shared/_Layout.cshtml ضع داخل النافبار:
<vc:auto-nav />
تأكد من وجود:
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
خصائص
يختار فقط أكشنات GET أو غير محددة الميثود.
يتجاهل الأكشنات ذات المعاملات الإلزامية (مثل Details(int id)).
لا يعرض إلا الروابط التي لها View فعلي.
يدعم Areas تلقائيًا.
CSS اختياري مع تموّج ولمعة خفيفة + دعم Dark/Light.
تخصيص
إخفاء عنصر:
[NavIgnore] // على الكنترولر أو الأكشن
اسم وترتيب:
[NavText("لوحة التحكم", order: 10)]
ملاحظات
معظم المشاريع لا تحتاج إعداد إضافي لاكتشاف الكنترولر AutoNavController. في حالات نادرة، أضف:
builder.Services.AddControllersWithViews()
.AddApplicationPart(typeof(AutoNav.Mvc.AutoNavController).Assembly);
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net6.0
- Microsoft.AspNetCore.Http (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.Abstractions (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.Core (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.Razor (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.RazorPages (>= 2.3.0)
-
net7.0
- Microsoft.AspNetCore.Http (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.Abstractions (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.Core (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.Razor (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.RazorPages (>= 2.3.0)
-
net8.0
- Microsoft.AspNetCore.Http (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.Abstractions (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.Core (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.Razor (>= 2.3.0)
- Microsoft.AspNetCore.Mvc.RazorPages (>= 2.3.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.