无论何时我读到关于Close()和Dispose()的内容,我最终都会看到很多只使用Using Block的引用,但我还没有找到如何在WebMatrix C#Razor语法中使用Using Block。
所以我不想要一个只使用一个使用块的答案,除非你能告诉我具体如何。
具体使用Database.Open(),在完成连接/查询后
我的问题是:
希望简单问题的简单答案。感谢
答案 0 :(得分:4)
ASP.NET Web Pages框架数据库助手的示例不包括对Close或Dispose的调用,因为框架本身旨在在请求结束时为您调用Dispose。如果使用ADO.NET而不是数据库帮助程序,则应使用using语句。话虽如此,没有什么可以阻止你使用块包装数据库助手调用:
IEnumerable<dynamic> floaters = null;
using(var db = Database.Open("MyDb")){
var sql = "SELECT * From LifeRafts";
floaters = db.Query(sql);
}
如果您想自己管理,可以直接调用Close或Dispose。无论如何,它们都会导致连接返回到ADO.NET连接池。