我考虑在传统的网络应用程序中使用PetaPoco。说传统我的意思是
Database对象的生命周期应该是什么,以及底层DbConnection的生命周期是什么?
[ThreadStatic]
我特别感谢那些使用PetaPoco运行制作应用程序的人的答案。
答案 0 :(得分:2)
每个请求都是要走的路
答案 1 :(得分:1)
每个线程需要一个对象,但是您不应该将该对象与线程本身关联,因为处理请求可以在一个线程中启动并在另一个线程中完成。
每个请求使用一个对象通常是最好的,至少对于快速请求处理。然而,这并不总是那么简单。如果您在没有处理对象的情况下冒险离开(例如,如果有例外),最好将一个对象用于有限的任务,以确保正确处置它。
答案 2 :(得分:1)
数据库是一个便宜的对象,所以我只需要根据需要创建它。我在繁忙的网络应用程序中使用PetaPoco(或者更具体地说是AsyncPoco所以我不会在I / O绑定工作期间绑定线程)这对我来说很有用。 Others do prefer per-request但是,这也应该有效。