Filter App (7).zip
حجم:
23.6M
تقویم شمسی به فیلتر اضافه شد
نکته : فقط از طریق تقویم تاریخ عوض می شود
بررسی کنید این پروژه 7 می خواهید یا پروژه 6 که input text تاریخ را وارد میکنید
Filter App (8).zip
حجم:
23.6M
ببخشید این دفعه همه کد های جاوااسکریپت را دیدم و خلاصه کردم کد جاوااسکریپت در صفحه اصلی کنترلر ProductController کوتاه تر شده
RAST.zip
حجم:
16M
پروژه راست که با کمک هوش مصنوعی نوشتم
پروژه ASP.Net Core MVC (وب و سی شارپ)
پروژه راست که با کمک هوش مصنوعی نوشتم
پروژه شما با نام "راست" (RAST)، یک سامانه مدیریت وظایف و پروژههاست که با استفاده از تکنولوژیهای مدرن دنیای داتنت طراحی شده است. این پروژه برای انتشار و ارائه به عنوان یک نمونه کار یا محصول کاربردی، دارای ویژگیهای فنی و ظاهری بسیار ارزشمندی است.
در ادامه، توضیحات کامل پروژه را در ۴ بخش اصلی برای شما تدوین کردهام:
۱. معماری و تکنولوژیهای استفاده شده
این پروژه بر پایه الگوی محبوب MVC (Model-View-Controller) بنا شده که باعث جداسازی دقیق منطق برنامه از ظاهر آن میشود:
Backend:
* استفاده از ASP.NET Core (جدیدترین نسخه) برای مدیریت درخواستها.
Database:
* بهرهگیری از Entity Framework Core به همراه پایگاهداده SQL Server.
لایه داده (Fluent API):* تنظیمات دیتابیس به صورت کدنویسی شده (کلاس
AppDbContext) انجام شده که دقت کار با مقادیر مالی (Decimal) را تضمین میکند. Frontend: * استفاده از Bootstrap برای واکنشگرایی (Responsive) و نمایش صحیح در موبایل و دسکتاپ. ۲. ویژگیهای کلیدی هوشمند پروژه "راست" صرفاً یک CRUD ساده (ساختن، خواندن، ویرایش، حذف) نیست، بلکه دارای قابلیتهای هوشمندی است: تشخیص خودکار زبان (RTL/LTR):* سیستم به صورت هوشمند تشخیص میدهد که نام پروژه فارسی است یا انگلیسی و جهت متن را برای خوانایی بهتر تغییر میدهد. مرتبسازی پیشرفته (Sorting Helper):* قابلیت مرتبسازی لیست بر اساس جدیدترینها، پربازدیدترینها، میزان بودجه و حتی ترتیب الفبای هوشمند. سیستم ردیابی بازدید:* با هر بار مشاهده جزئیات یک پروژه، سیستم به صورت خودکار تعداد بازدید را افزایش داده و در دیتابیس ذخیره میکند. جستجوی آنی:* امکان فیلتر کردن پروژهها بر اساس بخشی از نام آنها. ۳. تجربه کاربری (UI/UX) در طراحی این سامانه، سادگی و زیبایی در اولویت بوده است: ظاهر مدرن:* استفاده از کارتهای (Cards) جداگانه برای نمایش اطلاعات و فرمها. آیکونهای سیستمی:* برای جلوگیری از مشکلات بارگذاری در سیستمهای مختلف، از اموجیهای استاندارد و زیبا به جای فونتهای سنگین استفاده شده است. رنگبندی هدفمند:* استفاده از رنگ سبز برای "افزودن"، زرد برای "ویرایش" و قرمز برای "حذف" جهت راهنمایی بهتر چشم کاربر. ۴. امنیت و پایداری کدنویسی این پروژه با رعایت اصول امنیتی انجام شده است: Anti-Forgery Tokens: * جلوگیری از حملات مخرب وب (CSRF). Input Validation: * اعتبارسنجی دقیق دادههای ورودی کاربر (نام و بودجه) هم در سمت سرور و هم در سمت کاربر. Concurrency Handling: * مدیریت خطاهای احتمالی در صورتی که دو کاربر همزمان بخواهند یک پروژه را تغییر دهند. --- خلاصه نهایی برای معرفی: > "پروژه راست، یک راهکار سبک و سریع برای مدیریت تسکهاست که تمرکز ویژهای بر نمایش صحیح متون دو زبانه (فارسی/انگلیسی) و مدیریت دقیق بودجه دارد. این سامانه با رعایت استانداردهای Clean Code، پتانسیل بالایی برای توسعه و تبدیل شدن به یک پلتفرم مدیریتی جامع را داراست." این توضیحات به خوبی تخصص شما را در کدنویسی و توجه به جزئیات (مثل جهت متن و امنیت) به نمایش میگذارد. 🚀✨
AjaxApp.zip
حجم:
2.5M
کد ساده که با حداقل جاوااسکریپت داده های صفحه اصلی با عوض کردن لیست باکس بدونه رفرش عوض می شود
پروژه ASP.Net Core MVC (وب و سی شارپ)
کد ساده که با حداقل جاوااسکریپت داده های صفحه اصلی با عوض کردن لیست باکس بدونه رفرش عوض می شود
🚀 پروژه مدیریت هوشمند جداول با AJAX و Partial View* 🚀
سلام دوستان! امروز میخوایم بررسی کنیم که چطور میشه یک صفحه وب رو بدون حتی یک بار رفرش شدن، کاملاً زنده و پویا کرد! 💻✨
🎯 هدف پروژه چیه؟
دیگه گذشت اون زمان که برای دیدن دادههای جدید باید کل صفحه سایت از اول لود میشد! 🐢 در این پروژه، ما یاد میگیریم چطور با انتخاب یک گزینه، فقط و فقط "قلب جدول" رو آپدیت کنیم. یعنی سرعت موشکی و تجربه کاربری عالی! ⚡️🤩
---
🛠 تکنولوژیهای بهکار رفته:
Back-End: 🧠 ASP.NET Core (C#)
Front-End:* 🎨 Razor Views & HTML5
Library:* ⚡️ jQuery (AJAX)
Style:* 👗 Bootstrap
---
🏗 بخشهای اصلی معماری پروژه:
1️⃣ لایه مدل (Model): 📦
یک کلاس شسته-رفته به نام `Person` که هویت دادههای ما رو میسازه (مثلاً کی هستی و چه زمانی ثبتنام کردی؟).
2️⃣ کنترلر (Controller): 🎮
بخش هوشمند ماجرا! ما یک اکشن داریم که به جای لود کردن یک صفحه سنگین، فقط یک "تکه کد HTML" (همون Partial View) رو مثل یک پازل آماده میکنه و میفرسته.
3️⃣ پارتشال ویو (Partial View): 🧩
این فایل مثل یک قطعه پازله! فقط ردیفهای جدول رو میسازه و منتظره تا جاوااسکریپت اون رو در جای درستش قرار بده.
4️⃣ جادوی ایجکس (AJAX - jQuery): 🪄
پل ارتباطی ما! وقتی کاربر گزینهای رو انتخاب میکنه، ایجکس سریع میپره سمت سرور، ردیفهای جدید رو میگیره و بدون اینکه کاربر بفهمه، جایگزین قبلیها میکنه! 🏃♂️️💨
---
✅ چرا این روش خیلی خفنه؟
کد تمیز (Clean Code):* هر بخش وظیفه خودشو داره و کدها توی هم گره نمیخورن. 🫧
سرعت فرازمینی:* چون فقط چند خط کد جابجا میشه، نه کل صفحه! 🛸
رضایت کاربر (UX):* صفحه پرش نداره و همه چیز خیلی نرم و روان اتفاق میفته. 😊👌
---
🔄 فرآیند اجرا در یک نگاه:**
1️⃣ انتخاب: کاربر یک گروه رو از لیست انتخاب میکنه. 🖱
2️⃣ درخواست: جاوااسکریپت سیگنال میفرسته به سرور. 📡
3️⃣ پردازش: سرور دادهها رو فیلتر میکنه. ⚙️
4️⃣ تزریق: کدهای جدید در بدنه جدول میشینن. 💉💉
نتیجه: یک پنل مدیریتی حرفهای و مدرن که کار کردن باهاش لذتبخشه! 💎🔥
---
امیدوارم از این پروژه لذت برده باشید! مسیر حرفهای شدن از همین پروژههای هوشمند میگذره. 🚀🌟
Filter App (9).zip
حجم:
23.6M
این پروژه ajax اضافه شد
# پروژه مدیریت محصولات با فیلترهای پیشرفته و Ajax
## 📋 معرفی پروژه
یک سیستم مدیریت محصولات با قابلیتهای پیشرفته فیلتر، صفحهبندی و جستجو که به صورت Single Page Application (SPA) پیادهسازی شده است.
## 🚀 ویژگیهای اصلی
### 1. فیلترهای هوشمند
- 🔍 جستجوی متنی: جستجو در نام محصولات
- 🏷 فیلتر وضعیت: Pending، Registered، Cancelled
- ✅ فیلتر فعال/غیرفعال: نمایش محصولات فعال یا غیرفعال
- 💰 فیلتر قیمت: اسلایدر برای محدود کردن قیمت
- 📅 فیلتر تاریخ: انتخاب بازه تاریخ شمسی با استفاده از datepicker فارسی
- 🔄 فیلتر آنی: اعمال فیلترها بلافاصله با تغییر هر فیلد
### 2. صفحهبندی پیشرفته
- 📄 صفحهبندی Ajax: بدون رفرش صفحه
- 🔗 حفظ فیلترها: حفظ فیلترها هنگام تغییر صفحه
- 🌐 تغییر URL: بهروزرسانی URL بدون رفرش صفحه
- ↪️ پشتیبانی از History: کارکردن دکمههای عقب/جلو مرورگر
### 3. رابط کاربری مدرن
- 🎨 طراحی Responsive: سازگار با تمام دستگاهها
- ⚡️ لودینگ آنی: نمایش اسپینر هنگام بارگذاری
- 📱 تاریخشمار فارسی: استفاده از Persian Datepicker
- 🔢 فرمت اعداد: نمایش اعداد با جداکننده هزارگان
### 4. قابلیتهای فنی
- 🛡 کنترلر دو حالته: پشتیبانی از درخواستهای عادی و Ajax
- 📊 Partial View: جدول محصولات جدا از صفحه اصلی
- 🔄 تبدیل اعداد: تبدیل خودکار اعداد فارسی به انگلیسی
- 📝 اعتبارسنجی: تبدیل تاریخ شمسی به میلادی در سرور
## 🏗 ساختار پروژه
### مدلها (Models)
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public decimal Price { get; set; }
public DateTime CreatedAt { get; set; }
public bool IsActive { get; set; }
public ProjectStatus Status { get; set; }
}
public enum ProjectStatus
{
Pending,
Registered,
Cancelled
}
### کنترلر (Controller)
// ProductsController.cs public async Task<IActionResult> Index( ProjectStatus? status, bool? isActive, string searchString, decimal? maxPrice, string startDate, string endDate, int page = 1, bool isAjax = false) { // منطق فیلترها و صفحهبندی // بازگشت Partial View برای Ajax و View کامل برای درخواست عادی }### Viewها 1. Index.cshtml - صفحه اصلی با فرم فیلترها 2. _ProductTable.cshtml - Partial View برای جدول محصولات (مخصوص Ajax) ## ⚙️ نحوه راهاندازی ### پیشنیازها - .NET 6 یا بالاتر - SQL Server یا SQLite - مرورگر مدرن (Chrome, Firefox, Edge) ### مراحل نصب
1. کلون کردن پروژه 2. restore کردن packages: dotnet restore 3. update کردن دیتابیس: dotnet ef database update 4. اجرای پروژه: dotnet run### فایلهای ضروری
wwwroot/ ├── persian-datepicker/ # کتابخانه تاریخشمار فارسی ├── lib/ # کتابخانههای Bootstrap و FontAwesome └── js/ # فایلهای JavaScript Views/ ├── Products/ │ ├── Index.cshtml # صفحه اصلی │ └── _ProductTable.cshtml # Partial View جدول## 🔧 پیکربندی ### Connection String
{
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=ProductDb;Trusted_Connection=True;"
}
}
### تنظیمات صفحهبندی
// در کنترلر int pageSize = 3; // تعداد آیتم در هر صفحه## 📱 واسط کاربری ### بخشهای اصلی صفحه 1. هدر فیلترها: کارت شامل تمام فیلترها 2. جدول محصولات: نمایش لیست محصولات با ستونهای مختلف 3. صفحهبندی: ناوبری بین صفحات 4. دکمههای عملیات: ویرایش و حذف محصولات ### فیلدهای فرم - جستجوی متنی: فیلتر بر اساس نام محصول - Select وضعیت: وضعیت سفارش (در انتظار، ثبت شده، لغو شده) - Select فعال/غیرفعال: نمایش محصولات فعال یا غیرفعال - اسلایدر قیمت: محدود کردن بر اساس قیمت - تاریخشمار فارسی: انتخاب بازه تاریخ ## 🔄 جریان داده ### درخواست عادی (اولیه)
کاربر → URL → کنترلر → View کامل → مرورگر### درخواست Ajax (فیلتر/صفحهبندی)
کاربر → JavaScript → Fetch API → کنترلر → Partial View → JavaScript → بهروزرسانی DOM## 🛠 کتابخانههای استفاده شده ### Frontend - Bootstrap 5: فریمورک CSS - FontAwesome: آیکونها - Persian Datepicker: انتخاب تاریخ شمسی - Fetch API: ارسال درخواستهای Ajax ### Backend - Entity Framework Core: ORM برای دیتابیس - ASP.NET Core MVC: فریمورک اصلی - System.Globalization: برای کار با تاریخ شمسی ## 🔒 امنیت
### مکانیزمهای امنیتی
- تأیید حذف: نمایش confirm قبل از حذف
- تبدیل اعداد: جلوگیری از خطا در ورودی فارسی
- اعتبارسنجی تاریخ: تبدیل صحیح تاریخ شمسی به میلادی
- پارامترهای امن: استفاده از پارامترهای نوعدار در کنترلر
## 📈 بهینهسازیها
### Performance
- صفحهبندی سروری: بارگذاری فقط دادههای مورد نیاز
- Ajax: کاهش بارگذاری صفحه
- کش مرورگر: استفاده از History API
- لودینگ آنی: بهبود UX
### SEO
- URLهای معنادار: پارامترهای فیلتر در URL
- قابلیت اشتراکگذاری: هر URL وضعیت خاصی را نشان میدهد
- دسترسی موتورهای جستجو: درخواستهای اولیه کامل HTML برمیگردانند
## 🧪 تستها
### سناریوهای تست شده
1. ✅ اعمال فیلترهای مختلف
2. ✅ صفحهبندی با حفظ فیلترها
3. ✅ تغییر URL بدون رفرش
4. ✅ دکمههای عقب/جلو مرورگر
5. ✅ تبدیل اعداد فارسی به انگلیسی
6. ✅ تاریخ شمسی به میلادی
7. ✅ لودینگ آنی
8. ✅ نمایش خطاهای مناسب
## 🐛 عیبیابی
### مشکلات رایج و راهحل
1. خطای 404: بررسی routeها و نام کنترلر
2. اعداد فارسی: اطمینان از تبدیل در JavaScript و سرور
3. تاریخشمار: بررسی تنظیمات Persian Datepicker
4. Ajax کار نمیکند: بررسی پارامتر isAjax در کنترلر
## 📝 نکات توسعه
### برای توسعه بیشتر
1. اضافه کردن مرتبسازی: کلیک روی هدر ستونها
2. صادرات اکسل: خروجی گرفتن از نتایج
3. فیلترهای پیشرفته: جستجوی پیشرفته با چندین فیلد
4. نمودارها: نمایش آماری محصولات
5. احراز هویت: محدود کردن دسترسیها
6. API: ایجاد API برای برنامههای موبایل
## 🤝 مشارکت
### راهنمای مشارکت
1. Fork کردن پروژه 2. ایجاد Branch جدید (git checkout -b feature/AmazingFeature) 3. Commit کردن تغییرات (git commit -m 'Add AmazingFeature') 4. Push کردن به Branch (git push origin feature/AmazingFeature) 5. باز کردن Pull Request## 📄 لایسنس این پروژه تحت لایسنس MIT منتشر شده است. ## 📞 پشتیبانی برای گزارش باگ یا درخواست ویژگی جدید، از Issues در گیتهاب استفاده کنید. --- ✨ پروژه آماده انتشار!
Filter App (10).zip
حجم:
23.6M
کدهای ajax ساده و کم شدند
زمان:
حجم:
4.6M
تعاملی کردن صفحات وب در ASP
ساخته شده از هوش مصنوعی
و AJAX در ASP.NET Core MVC با تبادل داده بدون رفرش، تجربه کاربری را بهبود و بار سرور را کاهش میدهد. این تکنیک با استفاده از Partial Views و JavaScript، بخشهای خاصی از صفحه را بهروزرسانی میکند. علیرغم چالشهای SEO، این روش برای ساخت برنامههای مدرن ضروری است.