如何使用代码隐藏中的存储库模式获取数据
本文关键字:模式 获取 数据 存储 何使用 代码 隐藏 | 更新日期: 2023-09-27 18:35:32
我是一个新的 ASP.NET WebForms开发人员,我现在正在努力使用存储库模式检索.aspx页面的代码隐藏中的数据。例如,假设我想在我的测试应用程序的"关于我们"页面的代码隐藏中获取系统配置的值。我该怎么做?
我已经在数据访问层中拥有所有存储库类和接口。
以下是 SysConfigRepository 类的代码:
public class SysConfigRepository : IDisposable, ISysConfigRepository
{
//internal variable
private readonly TestEntities dbContext = new DbdKurdoaEntities();
public IEnumerable<T_SysConfig> GetSysConfigs()
{
return dbContext.T_SysConfig.ToList();
}
public T_SysConfig GetSysConfig(int id)
{
T_SysConfig sysConfigObj = GetSysConfigs().SingleOrDefault(s => s.Id == id);
return sysConfigObj;
}
private bool disposedValue = false;
protected virtual void Dispose(bool disposing)
{
if (!this.disposedValue)
{
if (disposing)
{
dbContext.Dispose();
}
}
this.disposedValue = true;
}
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
}
ISysConfigRepository的代码:
public interface ISysConfigRepository : IDisposable
{
IEnumerable<T_SysConfig> GetSysConfigs();
T_SysConfig GetSysConfig(int sysConfigId);
}
以前,我曾经在 DAL 中为每个实体提供一个类,然后我可以通过编写以下内容在任何.aspx页的代码隐藏中调用此类的对象:
SysConfig configObj = new SysConfig();
var result = configObj.GetSysConfigs(configObj);
那么我现在如何调用存储库对象来获取任何.aspx页面的代码隐藏中的数据呢?
您可能需要在此处提供更多详细信息。 你试过使用这个类吗?有错误吗?
using (var sysConfigRepository = new SysConfigRepository())
{
var configs = sysConfigRepository.GetSysConfigs ();
// Do some stuff here
}
你的 SysConfigRepository 不使用 Constructor!,所以你不能得到新的 类对象。public SysConfigRepository(){}代码波纹管工作:var configs = sysConfigRepository.GetSysConfigs ();