gpt4 book ai didi

c# - 需要有关访问数据库的建议

转载 作者:搜寻专家 更新时间:2023-10-30 23:24:20 25 4
gpt4 key购买 nike

假设我有一个具有属性及其方法的 Comment 类喜欢

public Comment GetComment(Guid id)

public static List<Comment> GetComments()
public static List<Comment> GetCommentsByAuthor(Author id)

现在,我通常做的是为每个以上方法。就是说,现在我看到了 BlogEngine.NET 代码,他在其中写道方式;他为 GetComments() 方法编写了数据库逻辑并提取了对于所有剩余的方法,甚至对于 GetComment(Guid id)使用类似的东西

   //FindAll is a method in List<T> class
FindAll(delegate(Comment comment)
{
return comment.Author.Equals(author ,
StringComparison.OrdinalIgnoreCase);
}
);

我的问题是,以这种方式而不是第一种方法?这种方式的任何优点和缺点以及建议和指示以及资源是最受欢迎的。TIA斯里尼瓦斯

最佳答案

在可能的情况下重用代码而不是重写是个好主意,但这不是最好的方法。它需要从数据库中提取所有行,然后在客户端过滤它们。如果您使用 Linq,您可以遵循重复使用查询的相同模式,但过滤将在数据库中而不是在客户端中完成,从而提高性能。

public IQueryable<Comment> GetCommentsByAuthor(Author author) {
return GetComments().Where(comment => comment.Author.Id == author.Id);
}

关于c# - 需要有关访问数据库的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1815148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com