创建数据访问对象时最好的方法是什么?

cdu*_*dub 6 .net c# .net-3.5

我在MyWebpage.aspx.cs中有一个方法,所以:

public partial class MyWebpage : PageBase
{
    private readonly DataAccessLayer dataAccessLayer;

    protected string GetMyTitle(string myVar, string myId)
    {
        if (string.IsNullOrEmpty(myVar))
        {
            return string.Empty;
        }

        return dataAccessLayer.GetMyTitle(Convert.ToInt32(myId), myVar);
    }
}
Run Code Online (Sandbox Code Playgroud)

在DataAccessLayer类中,我有一个与DB对话并执行DAL并返回标题的方法.

从MyWebPage.aspx.cs类访问DAL的最佳实践是什么(每次我需要创建一个新的DataAccessLayer()对象?我应该在我的PageBase类中创建它还是每次在后面的代码中调用它?

小智 7

首先是从您的代码后面访问DAL或表示层通常不是一个好习惯.因为在这种情况下,您需要将业务逻辑代码放在代码中(表示层),这会导致关注点冲突,高耦合,重复和许多其他问题.所以,如果您正在寻找最佳实践,我建议您查看以下链接:

这些都是好书:

还有关于调用DAL的静态函数.如你所知,静态函数容易受到多线程的影响,所以如果你使用DAL函数中共享的任何东西(有时它就像共享连接,命令等)它会破坏你的代码,所以我认为它更好避免在这一层中使用静态函数.