سلام
من یک برنامه تحت ModelFirst براساس UnitOfWork نوشته ام
اما می خواهم از sp که نوشته ام در Repository خودم استفاده کنم
اما نمی دانم چگونه این sp را در Repository مورد نظر فراخوانی کنم
public interface IMenuRepository : IRepository
public interface IUnitOfWork : IDisposable { IMenuRepository MenuRepository { get; } int Complete(); } public class UnitOfWork : IUnitOfWork { private readonly TestCRUDSignalREntitie _context; public IMenuRepository MenuRepository { get; private set; } public UnitOfWork(TestCRUDSignalREntitie context) { _context = context; MenuRepository = new MenuRepository(_context); } public int Complete() { return _context.SaveChanges(); } public void Dispose() { _context.Dispose(); } } namespace WindowsFormsApp1 { public interface IRepositorywhere TEntity : class { TEntity Get(object id); IEnumerable GetAll(); TEntity GetRow(); TEntity GetAllEntity(); IEnumerable Find(Expression<> > perdicate); TEntity FindSelect(Expression<> > perdicate); bool FindRow(Expression<> > perdicate); IEnumerable FindRawSql(string query, params object[] parameters); void Add(TEntity entity); void AddRange(IEnumerable entities); void Remove(TEntity entity); void RemoveRange(IEnumerable entities); void Update(TEntity entity); } } public class Repository : IRepository where TEntity : class { protected readonly DbContext Context; public Repository(DbContext context) { Context = context; } public virtual TEntity Get(object id) { return Context.Set ().Find(id); } public virtual IEnumerable GetAll() { return Context.Set ().ToList(); } public virtual TEntity GetRow() { return Context.Set ().FirstOrDefault(); } public virtual TEntity GetAllEntity() { return Context.Set ().FirstOrDefault(); } public virtual IEnumerable Find(Expression<> > predicate) { return Context.Set ().Where(predicate); } public virtual TEntity FindSelect(Expression<> > predicate) { return Context.Set ().Where(predicate).FirstOrDef ault(); } public virtual bool FindRow(Expression<> > predicate) { var check = Context.Set ().Where(predicate).SingleOrDe fault(); return check != null; } public IEnumerable FindRawSql(string query, params object[] parameters) { return Context.Set ().SqlQuery(query, parameters).ToList(); } public virtual void Add(TEntity entity) { Context.Set ().Add(entity); } public virtual void AddRange(IEnumerable entities) { Context.Set ().AddRange(entities); } public virtual void Remove(TEntity entity) { Context.Set ().Remove(entity); } public virtual void RemoveRange(IEnumerable entities) { Context.Set ().RemoveRange(entities); } public virtual void Update(TEntity entity) { Context.Set ().Attach(entity); Context.Entry(entity).State = EntityState.Modified; } }
این پست در تاریخ {{ dateString(new Date(post.deleteDate)) }} توسط {{ post.deletedByUser }} حذف شده است.
دلیل حذف: {{ post.deleteReason ?? 'نامشخص' }}
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود