我正在尝试以减少/避免代码重复的方式构造我的代码,但我遇到了一个有趣的问题。每次我的代码调用存储过程时,我都需要传递一些存储过程共有的变量:例如用户名、域、server_ip 和 client_ip。这些都来自 HttpRequest 对象或 system.environment 对象。
由于这些被传递给每个存储过程,我最初的想法是创建一个实用程序类,它是一个数据库包装器,并且每次都会初始化并传递它们,所以我不必在我的代码中这样做。问题是尽管 c# 类(在 App_Code 文件夹内)看不到 Httprequest 对象。当然,我可以将此作为参数传递给包装器,但这会破坏创建包装器的整个目的。我在这里错过了什么吗?
我意识到每次调用存储过程时重复 4 行代码并不是什么大不了的事,但我宁愿在早期阶段消除代码重复。