62 lines
1.5 KiB
C#
62 lines
1.5 KiB
C#
using System;
|
|
using System.Data.Entity;
|
|
using System.Linq;
|
|
using EnVisage.Models;
|
|
|
|
namespace EnVisage.Code.BLL
|
|
{
|
|
public class UserQuickLinkManager : ManagerBase<UserQuickLink, UserQuickLinkModel>
|
|
{
|
|
public UserQuickLinkManager(EnVisageEntities dbContext)
|
|
: base(dbContext)
|
|
{
|
|
}
|
|
|
|
protected override UserQuickLink InitInstance()
|
|
{
|
|
return new UserQuickLink { Id = Guid.NewGuid() };
|
|
}
|
|
|
|
protected override UserQuickLink RetrieveReadOnlyById(Guid key)
|
|
{
|
|
return DataTable.AsNoTracking().FirstOrDefault(t => t.Id == key);
|
|
}
|
|
|
|
public override DbSet<UserQuickLink> DataTable
|
|
{
|
|
get
|
|
{
|
|
return DbContext.UserQuickLinks;
|
|
}
|
|
}
|
|
|
|
public UserQuickLinkModel GetUserQuickLinkById(Guid? id)
|
|
{
|
|
if (!id.HasValue)
|
|
return null;
|
|
|
|
return UserQuickLinkModelQueryBase.FirstOrDefault(x => x.Id == id);
|
|
}
|
|
|
|
#region Queries
|
|
|
|
private IQueryable<UserQuickLinkModel> UserQuickLinkModelQueryBase
|
|
{
|
|
get
|
|
{
|
|
var query = DataTable.Select(x => new UserQuickLinkModel()
|
|
{
|
|
Id = x.Id,
|
|
Name = x.Name,
|
|
UserId = x.UserId,
|
|
Url = x.Url,
|
|
PageState = x.PageState
|
|
});
|
|
|
|
return query;
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
} |