PDA

View Full Version : لود کردن اطلاعات از دیتابیس بجای ورود دستی جدول



reza69
دوشنبه 24 مرداد 1401, 00:12 صبح
سلام
در قطعه کد زیر یک جدول به صورت دستی وارد میشه ولی من میخوام اطلاعات جدول دیتابیس داخل تابع لود شه.


public interface IMainMenuService
{
List<MainMenuTable> GetAllMenu();
}

public class MainMenuService : IMainMenuService
{

public List<MainMenuTable> GetAllMenu()
{
return new List<MainMenuTable>()
{
new MainMenuTable() {Link = "link1", Title = "عنوان1"},
new MainMenuTable() {Link = "link2", Title = "عنوان2"},
new MainMenuTable() {Link = "link3", Title = "عنوان 3"},
new MainMenuTable() {Link = "link4", Title = "عنوان 4"}
};
}

}

mmbguide
دوشنبه 24 مرداد 1401, 23:06 عصر
سلام

شما بفرمایید به چه روشی دارید با بانک اطلاعاتی کار میکنید؟ البته اگر با EF کار کنید (یا هر تکنولوژی ارتباطی با بانک اطلاعاتی) براحتی مقدار برگشتی تبدیل به آرایه ای از کلاس های Entity میشه و نیازی نیست به عنوان برنامه نویس با چالش های چگونگی انجام کار با EF درگیر بشید.

reza69
سه شنبه 25 مرداد 1401, 12:47 عصر
جواب این سوال اینه:

public class MainMenuService : IMainMenuService
{
private ApplicationDbContext _db;
public MainMenuService(
ApplicationDbContext db)
{
_db = db;
}
public List<MainMenuTable> GetAllMenu()
{
List<MainMenuTable> listRange = new List<MainMenuTable>();
var data = _db.MainMenuTable.OrderBy(a => a.Sort);
foreach (var items in data)
{
listRange.Add(new MainMenuTable() { Link = items.Link, Title = items.Title });
}

return listRange;
}
}