0

我想知道在这些之间获得性能(内存使用,cpu,...)的最佳(最快)方法是什么:

  1. 您只需创建一个.dbml或一个.edmx文件,然后调用实体列表,如下所示

    MyEntitiesDataContext db = new MyEntitiesDataContext();
    var models = db.Labels.ToList();
    
  2. 您创建一个存储过程,将其拖放到.dbml/.edmx文件上,然后按如下方式调用它

    MyEntitiesDataContext db = new MyEntitiesDataContext();
    var models = db.ListLabelProcedure();
    

第二种编码方式是进一步的工作,因为您需要自己开发存储过程。

PS:我们正在处理大数据。最小的表最多可以注册10G。行

谁能告诉我最好的方法是什么?

4

1 回答 1

0

一切都取决于你需要对你的数据做什么......如果你真的需要它们 .Net 服务器端我认为这两种方法是相似的。但是如果您可以在 SQL Server 端用存储过程处理它们,然后只检索结果,那么存储过程方法将是一个好主意。

此外,我认为你应该小心使用 Linq .ToList() 因为它会“加载”来自 SQL Server 的所有数据(网络和内存使用情况),所以如果你有巨大的表,它会影响你的 ASP.Net 服务器的内存,对存储过程的调用不会。

我希望这会有所帮助

于 2013-08-26T13:10:55.480 回答