【问题标题】:ASP.NET Web API code uses which pattern - C#ASP.NET Web API 代码使用哪种模式 - C#
【发布时间】:2021-12-15 22:28:25
【问题描述】:

我在所谓的存储库层中有以下代码。

public class EmployeeDetailsRepository : IEmployeeDetailsRepository
{
    private readonly IDataAccess _dataAccess;

    public ILogger Logger { get; set; }

    public EmployeeDetailsRepository(IDataAccess dataAccess)
    {
        Logger = LoggerUtil.GetLogger("Data access repository");
    }

    public EmployeeDetails GetEmployeeByFirstName(string firstName)
    {
        EmployeeDetails employeeDetails;

        using (ILinqContext context = _dataAccess.CreateContext(""))
        {
            employeeDetails =
                (from stg in context.Table<Employees>() 
                 where (stg.Name == firstName)
                 select stg).FirstOrDefault();
        }
        
        return employeeDetails;
    }
}

上面的代码到底是什么意思?我搜索的每个示例都是针对 ASP.NET Core 的。我知道这是使用 Web API 2 的 ASP.NET Framework 4.5。但是我在搜索时看到了这么多模式,我应该阅读/学习什么来更好地理解这种模式?

如果需要,我可以粘贴更多代码。

【问题讨论】:

    标签: c# asp.net asp.net-web-api


    【解决方案1】:

    您的代码所做的是;它正在使用Entity framework 实现存储库模式

    当您调用上述方法时,EF 会生成如下 SQL 查询:

    SELECT TOP(1) [e].[Id], [e].[DoB], [e].[FirstName], [e].[LastName]
    FROM [Employees] AS [e]
    WHERE [e].[FirstName] = N'Bill'
    

    您可以参考以下内容了解更多信息。

    https://channel9.msdn.com/Series/The-Full-Stack/The-Full-Stack-Part-5-Implementing-the-repository-with-EF-Code-First-and-Dependency-Injection

    https://www.youtube.com/watch?v=rtXpYpZdOzM

    【讨论】:

    • 还有更多使用 asp.net web api 的 youtube 视频吗?
    【解决方案2】:

    【讨论】:

    • 你能指点一些youtube教程吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-17
    • 1970-01-01
    相关资源
    最近更新 更多