Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用新的亚音速3.0 IRepository模式_C#_Asp.net_Subsonic - Fatal编程技术网

C# 如何使用新的亚音速3.0 IRepository模式

C# 如何使用新的亚音速3.0 IRepository模式,c#,asp.net,subsonic,C#,Asp.net,Subsonic,有人(希望是Rob)能解释一下如何实现新的存储库模式吗?我使用了旧版本和MVC模板(在web表单中),使用了以下初始化 public IRepository<StaffingPosition> _StaffingPositionsRepository; public StaffingBase() { _StaffingPositionsRepository = new SubSonicRepository<StaffingPositi

有人(希望是Rob)能解释一下如何实现新的存储库模式吗?我使用了旧版本和MVC模板(在web表单中),使用了以下初始化

    public IRepository<StaffingPosition> _StaffingPositionsRepository;

    public  StaffingBase()
    {
        _StaffingPositionsRepository = new SubSonicRepository<StaffingPosition>();
    }
    public StaffingBase(IRepository<StaffingPosition> staffingpositionsRepo)
    {
        _StaffingPositionsRepository = staffingpositionsRepo;
    }
public-IRepository\u staffingpositions-repository;
公共服务基地()
{
_StaffingPositionsRepository=新存储库();
}
公共员工基地(IRepository staffingpositionsRepo)
{
_StaffingPositionsRepository=staffingpositionsRepo;
}
请注意,为了便于访问,我的WCF服务继承了此类。

现在,SubSonicRepository()需要一个IQuerySurface参数,我不确定实现这一点的最佳方法。我真的很喜欢IRepository模式,如果可能的话,我想坚持下去……也就是说,除非有人有更好的想法。谢谢

模板生成一个实现IQuerySurface的新类,您可以在main.tt文件中配置该类的名称(通常类似于NorthwindDb)。通常只需将此类的新实例传递到存储库:

_StaffingPositionsRepository = new SubSonicRepository<StaffingPosition>(new StaffingDB());
\u StaffingPositionsRepository=新的存储库(new StaffingDB());

这很有效!也就是说,每当我使用新的Subonic时,即使在本例中,它也会返回正确数量的记录,但所有记录项(在本例中为泛型列表)都为空。有人知道这是为什么吗?你应该把它作为一个新的问题发布,并提供更多细节。这样你会得到更多的回应。